diff options
Diffstat (limited to 'epan/dissectors')
22 files changed, 12445 insertions, 944 deletions
diff --git a/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn b/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn index bf09fb4ed7..834ddabae4 100644 --- a/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn +++ b/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.6 Common Definitions -- ************************************************************** -- diff --git a/epan/dissectors/asn1/ngap/NGAP-Constants.asn b/epan/dissectors/asn1/ngap/NGAP-Constants.asn index d170194af3..ccfa0ec463 100644 --- a/epan/dissectors/asn1/ngap/NGAP-Constants.asn +++ b/epan/dissectors/asn1/ngap/NGAP-Constants.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.7 Constant Definitions -- ************************************************************** -- @@ -86,6 +86,19 @@ id-UplinkRANStatusTransfer ProcedureCode ::= 49 id-UplinkUEAssociatedNRPPaTransport ProcedureCode ::= 50 id-WriteReplaceWarning ProcedureCode ::= 51 id-SecondaryRATDataUsageReport ProcedureCode ::= 52 +id-UplinkRIMInformationTransfer ProcedureCode ::= 53 +id-DownlinkRIMInformationTransfer ProcedureCode ::= 54 +id-RetrieveUEInformation ProcedureCode ::= 55 +id-UEInformationTransfer ProcedureCode ::= 56 +id-RANCPRelocationIndication ProcedureCode ::= 57 +id-UEContextResume ProcedureCode ::= 58 +id-UEContextSuspend ProcedureCode ::= 59 +id-UERadioCapabilityIDMapping ProcedureCode ::= 60 +id-HandoverSuccess ProcedureCode ::= 61 +id-UplinkRANEarlyStatusTransfer ProcedureCode ::= 62 +id-DownlinkRANEarlyStatusTransfer ProcedureCode ::= 63 +id-AMFCPRelocationIndication ProcedureCode ::= 64 +id-ConnectionEstablishmentIndication ProcedureCode ::= 65 -- ************************************************************** -- @@ -104,8 +117,12 @@ maxProtocolIEs INTEGER ::= 65535 -- ************************************************************** maxnoofAllowedAreas INTEGER ::= 16 + maxnoofAllowedCAGsperPLMN INTEGER ::= 256 maxnoofAllowedS-NSSAIs INTEGER ::= 8 + maxnoofBluetoothName INTEGER ::= 4 maxnoofBPLMNs INTEGER ::= 12 + maxnoofCAGSperCell INTEGER ::= 64 + maxnoofCellIDforMDT INTEGER ::= 32 maxnoofCellIDforWarning INTEGER ::= 65535 maxnoofCellinAoI INTEGER ::= 256 maxnoofCellinEAI INTEGER ::= 65535 @@ -121,20 +138,29 @@ maxProtocolIEs INTEGER ::= 65535 maxnoofEPLMNsPlusOne INTEGER ::= 16 maxnoofE-RABs INTEGER ::= 256 maxnoofErrors INTEGER ::= 256 + maxnoofExtSliceItems INTEGER ::= 65535 maxnoofForbTACs INTEGER ::= 4096 - maxnoofMultiConnectivity INTEGER ::= 4 + maxnoofFreqforMDT INTEGER ::= 8 + maxnoofMDTPLMNs INTEGER ::= 16 + maxnoofMultiConnectivity INTEGER ::= 4 maxnoofMultiConnectivityMinusOne INTEGER ::= 3 + maxnoofNeighPCIforMDT INTEGER ::= 32 maxnoofNGConnectionsToReset INTEGER ::= 65536 + maxnoofNRCellBands INTEGER ::= 32 + maxnoofPC5QoSFlows INTEGER ::= 2048 maxnoofPDUSessions INTEGER ::= 256 maxnoofPLMNs INTEGER ::= 12 maxnoofQosFlows INTEGER ::= 64 + maxnoofQosParaSets INTEGER ::= 8 maxnoofRANNodeinAoI INTEGER ::= 64 maxnoofRecommendedCells INTEGER ::= 16 maxnoofRecommendedRANNodes INTEGER ::= 16 maxnoofAoI INTEGER ::= 64 + maxnoofSensorName INTEGER ::= 3 maxnoofServedGUAMIs INTEGER ::= 256 maxnoofSliceItems INTEGER ::= 1024 maxnoofTACs INTEGER ::= 256 + maxnoofTAforMDT INTEGER ::= 8 maxnoofTAIforInactive INTEGER ::= 16 maxnoofTAIforPaging INTEGER ::= 16 maxnoofTAIforRestart INTEGER ::= 2048 @@ -142,9 +168,12 @@ maxProtocolIEs INTEGER ::= 65535 maxnoofTAIinAoI INTEGER ::= 16 maxnoofTimePeriods INTEGER ::= 2 maxnoofTNLAssociations INTEGER ::= 32 + maxnoofWLANName INTEGER ::= 4 maxnoofXnExtTLAs INTEGER ::= 16 maxnoofXnGTP-TLAs INTEGER ::= 16 maxnoofXnTLAs INTEGER ::= 2 + maxnoofCandidateCells INTEGER ::= 32 + maxNRARFCN INTEGER ::= 3279165 -- ************************************************************** -- @@ -327,6 +356,103 @@ maxProtocolIEs INTEGER ::= 65535 id-SourceToTarget-AMFInformationReroute ProtocolIE-ID ::= 171 id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID ::= 172 id-SCTP-TLAs ProtocolIE-ID ::= 173 - + id-DataForwardingResponseERABList ProtocolIE-ID ::= 174 + id-RIMInformationTransfer ProtocolIE-ID ::= 175 + id-GUAMIType ProtocolIE-ID ::= 176 + id-SRVCCOperationPossible ProtocolIE-ID ::= 177 + id-TargetRNC-ID ProtocolIE-ID ::= 178 + id-RAT-Information ProtocolIE-ID ::= 179 + id-ExtendedRATRestrictionInformation ProtocolIE-ID ::= 180 + id-QosMonitoringRequest ProtocolIE-ID ::= 181 + id-SgNB-UE-X2AP-ID ProtocolIE-ID ::= 182 + id-AdditionalRedundantDL-NGU-UP-TNLInformation ProtocolIE-ID ::= 183 + id-AdditionalRedundantDLQosFlowPerTNLInformation ProtocolIE-ID ::= 184 + id-AdditionalRedundantNGU-UP-TNLInformation ProtocolIE-ID ::= 185 + id-AdditionalRedundantUL-NGU-UP-TNLInformation ProtocolIE-ID ::= 186 + id-CNPacketDelayBudgetDL ProtocolIE-ID ::= 187 + id-CNPacketDelayBudgetUL ProtocolIE-ID ::= 188 + id-ExtendedPacketDelayBudget ProtocolIE-ID ::= 189 + id-RedundantCommonNetworkInstance ProtocolIE-ID ::= 190 + id-RedundantDL-NGU-TNLInformationReused ProtocolIE-ID ::= 191 + id-RedundantDL-NGU-UP-TNLInformation ProtocolIE-ID ::= 192 + id-RedundantDLQosFlowPerTNLInformation ProtocolIE-ID ::= 193 + id-RedundantQosFlowIndicator ProtocolIE-ID ::= 194 + id-RedundantUL-NGU-UP-TNLInformation ProtocolIE-ID ::= 195 + id-TSCTrafficCharacteristics ProtocolIE-ID ::= 196 + id-RedundantPDUSessionInformation ProtocolIE-ID ::= 197 + id-UsedRSNInformation ProtocolIE-ID ::= 198 + id-IAB-Authorized ProtocolIE-ID ::= 199 + id-IAB-Supported ProtocolIE-ID ::= 200 + id-IABNodeIndication ProtocolIE-ID ::= 201 + id-NB-IoT-PagingDRX ProtocolIE-ID ::= 202 + id-NB-IoT-Paging-eDRXInfo ProtocolIE-ID ::= 203 + id-NB-IoT-DefaultPagingDRX ProtocolIE-ID ::= 204 + id-Enhanced-CoverageRestriction ProtocolIE-ID ::= 205 + id-Extended-ConnectedTime ProtocolIE-ID ::= 206 + id-PagingAssisDataforCEcapabUE ProtocolIE-ID ::= 207 + id-WUS-Assistance-Information ProtocolIE-ID ::= 208 + id-UE-DifferentiationInfo ProtocolIE-ID ::= 209 + id-NB-IoT-UEPriority ProtocolIE-ID ::= 210 + id-UL-CP-SecurityInformation ProtocolIE-ID ::= 211 + id-DL-CP-SecurityInformation ProtocolIE-ID ::= 212 + id-TAI ProtocolIE-ID ::= 213 + id-UERadioCapabilityForPagingOfNB-IoT ProtocolIE-ID ::= 214 + id-LTEV2XServicesAuthorized ProtocolIE-ID ::= 215 + id-NRV2XServicesAuthorized ProtocolIE-ID ::= 216 + id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 217 + id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 218 + id-PC5QoSParameters ProtocolIE-ID ::= 219 + id-AlternativeQoSParaSetList ProtocolIE-ID ::= 220 + id-CurrentQoSParaSetIndex ProtocolIE-ID ::= 221 + id-CEmodeBrestricted ProtocolIE-ID ::= 222 + id-PagingeDRXInformation ProtocolIE-ID ::= 223 + id-CEmodeBSupport-Indicator ProtocolIE-ID ::= 224 + id-LTEM-Indication ProtocolIE-ID ::= 225 + id-EndIndication ProtocolIE-ID ::= 226 + id-EDT-Session ProtocolIE-ID ::= 227 + id-UECapabilityInfoRequest ProtocolIE-ID ::= 228 + id-PDUSessionResourceFailedToResumeListRESReq ProtocolIE-ID ::= 229 + id-PDUSessionResourceFailedToResumeListRESRes ProtocolIE-ID ::= 230 + id-PDUSessionResourceSuspendListSUSReq ProtocolIE-ID ::= 231 + id-PDUSessionResourceResumeListRESReq ProtocolIE-ID ::= 232 + id-PDUSessionResourceResumeListRESRes ProtocolIE-ID ::= 233 + id-UE-UP-CIoT-Support ProtocolIE-ID ::= 234 + id-Suspend-Request-Indication ProtocolIE-ID ::= 235 + id-Suspend-Response-Indication ProtocolIE-ID ::= 236 + id-RRC-Resume-Cause ProtocolIE-ID ::= 237 + id-RGLevelWirelineAccessCharacteristics ProtocolIE-ID ::= 238 + id-W-AGFIdentityInformation ProtocolIE-ID ::= 239 + id-GlobalTNGF-ID ProtocolIE-ID ::= 240 + id-GlobalTWIF-ID ProtocolIE-ID ::= 241 + id-GlobalW-AGF-ID ProtocolIE-ID ::= 242 + id-UserLocationInformationW-AGF ProtocolIE-ID ::= 243 + id-UserLocationInformationTNGF ProtocolIE-ID ::= 244 + id-AuthenticatedIndication ProtocolIE-ID ::= 245 + id-TNGFIdentityInformation ProtocolIE-ID ::= 246 + id-TWIFIdentityInformation ProtocolIE-ID ::= 247 + id-UserLocationInformationTWIF ProtocolIE-ID ::= 248 + id-SelectedPLMNIdentity ProtocolIE-ID ::= 249 + id-IntersystemSONConfigurationTransferDL ProtocolIE-ID ::= 250 + id-IntersystemSONConfigurationTransferUL ProtocolIE-ID ::= 251 + id-SONInformationReport ProtocolIE-ID ::= 252 + id-UEHistoryInformationFromTheUE ProtocolIE-ID ::= 253 + id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 254 + id-MDTConfiguration ProtocolIE-ID ::= 255 + id-PrivacyIndicator ProtocolIE-ID ::= 256 + id-TraceCollectionEntityURI ProtocolIE-ID ::= 257 + id-NPN-Support ProtocolIE-ID ::= 258 + id-NPN-AccessInformation ProtocolIE-ID ::= 259 + id-NPN-PagingAssistanceInformation ProtocolIE-ID ::= 260 + id-NPN-MobilityInformation ProtocolIE-ID ::= 261 + id-TargettoSource-Failure-TransparentContainer ProtocolIE-ID ::= 262 + id-NID ProtocolIE-ID ::= 263 + id-UERadioCapabilityID ProtocolIE-ID ::= 264 + id-UERadioCapability-EUTRA-Format ProtocolIE-ID ::= 265 + id-DAPSRequestInfo ProtocolIE-ID ::= 266 + id-DAPSResponseInfoList ProtocolIE-ID ::= 267 + id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID ::= 268 + id-NotifySourceNGRANNode ProtocolIE-ID ::= 269 + id-ExtendedSliceSupportList ProtocolIE-ID ::= 270 + id-ExtendedTAISliceSupportList ProtocolIE-ID ::= 271 END diff --git a/epan/dissectors/asn1/ngap/NGAP-Containers.asn b/epan/dissectors/asn1/ngap/NGAP-Containers.asn index 1e6f9be13a..6558c4d0ed 100644 --- a/epan/dissectors/asn1/ngap/NGAP-Containers.asn +++ b/epan/dissectors/asn1/ngap/NGAP-Containers.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.8 Container Definitions -- ************************************************************** -- diff --git a/epan/dissectors/asn1/ngap/NGAP-IEs.asn b/epan/dissectors/asn1/ngap/NGAP-IEs.asn index d2387534eb..3c5d408c7b 100644 --- a/epan/dissectors/asn1/ngap/NGAP-IEs.asn +++ b/epan/dissectors/asn1/ngap/NGAP-IEs.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.5 Information Element Definitions -- ************************************************************** -- @@ -21,19 +21,47 @@ IMPORTS id-AdditionalDLQosFlowPerTNLInformation, id-AdditionalDLUPTNLInformationForHOList, id-AdditionalNGU-UP-TNLInformation, + id-AdditionalRedundantDL-NGU-UP-TNLInformation, + id-AdditionalRedundantDLQosFlowPerTNLInformation, + id-AdditionalRedundantNGU-UP-TNLInformation, + id-AdditionalRedundantUL-NGU-UP-TNLInformation, id-AdditionalUL-NGU-UP-TNLInformation, + id-AlternativeQoSParaSetList, id-Cause, + id-CNPacketDelayBudgetDL, + id-CNPacketDelayBudgetUL, id-CNTypeRestrictionsForEquivalent, id-CNTypeRestrictionsForServing, id-CommonNetworkInstance, + id-CurrentQoSParaSetIndex, + id-DAPSRequestInfo, + id-DAPSResponseInfoList, id-DataForwardingNotPossible, + id-DataForwardingResponseERABList, + id-DirectForwardingPathAvailability, id-DL-NGU-UP-TNLInformation, id-EndpointIPAddressAndPort, + id-ExtendedPacketDelayBudget, + id-ExtendedRATRestrictionInformation, + id-ExtendedSliceSupportList, + id-ExtendedTAISliceSupportList, + id-GlobalRANNodeID, + id-GlobalTNGF-ID, + id-GlobalTWIF-ID, + id-GlobalW-AGF-ID, + id-GUAMIType, id-LastEUTRAN-PLMNIdentity, id-LocationReportingAdditionalInfo, id-MaximumIntegrityProtectedDataRate-DL, + id-MDTConfiguration, id-NetworkInstance, + id-NID, + id-NPN-MobilityInformation, + id-NPN-PagingAssistanceInformation, + id-NPN-Support, id-OldAssociatedQosFlowList-ULendmarkerexpected, + id-PagingAssisDataforCEcapabUE, + id-PagingeDRXInformation, id-PDUSessionAggregateMaximumBitRate, id-PDUSessionResourceFailedToSetupListCxtFail, id-PDUSessionResourceReleaseResponseTransfer, @@ -42,19 +70,44 @@ IMPORTS id-QosFlowAddOrModifyRequestList, id-QosFlowSetupRequestList, id-QosFlowToReleaseList, + id-QosMonitoringRequest, + id-RAT-Information, + id-RedundantCommonNetworkInstance, + id-RedundantDL-NGU-TNLInformationReused, + id-RedundantDL-NGU-UP-TNLInformation, + id-RedundantDLQosFlowPerTNLInformation, + id-RedundantPDUSessionInformation, + id-RedundantQosFlowIndicator, + id-RedundantUL-NGU-UP-TNLInformation, id-SCTP-TLAs, id-SecondaryRATUsageInformation, id-SecurityIndication, id-SecurityResult, + id-SgNB-UE-X2AP-ID, id-S-NSSAI, + id-SONInformationReport, id-TNLAssociationTransportLayerAddressNGRAN, + id-TargetRNC-ID, + id-TraceCollectionEntityURI, + id-TSCTrafficCharacteristics, + id-UEHistoryInformationFromTheUE, + id-UERadioCapabilityForPagingOfNB-IoT, id-UL-NGU-UP-TNLInformation, id-UL-NGU-UP-TNLModifyList, id-ULForwarding, id-ULForwardingUP-TNLInformation, + id-UsedRSNInformation, + id-UserLocationInformationTNGF, + id-UserLocationInformationTWIF, + id-UserLocationInformationW-AGF, maxnoofAllowedAreas, + maxnoofAllowedCAGsperPLMN, maxnoofAllowedS-NSSAIs, + maxnoofBluetoothName, maxnoofBPLMNs, + maxnoofCAGSperCell, + maxnoofCandidateCells, + maxnoofCellIDforMDT, maxnoofCellIDforWarning, maxnoofCellinAoI, maxnoofCellinEAI, @@ -70,20 +123,30 @@ IMPORTS maxnoofEPLMNsPlusOne, maxnoofE-RABs, maxnoofErrors, + maxnoofExtSliceItems, maxnoofForbTACs, + maxnoofFreqforMDT, + maxnoofMDTPLMNs, maxnoofMultiConnectivity, maxnoofMultiConnectivityMinusOne, + maxnoofNeighPCIforMDT, maxnoofNGConnectionsToReset, + maxNRARFCN, + maxnoofNRCellBands, + maxnoofPC5QoSFlows, maxnoofPDUSessions, maxnoofPLMNs, maxnoofQosFlows, + maxnoofQosParaSets, maxnoofRANNodeinAoI, maxnoofRecommendedCells, maxnoofRecommendedRANNodes, maxnoofAoI, + maxnoofSensorName, maxnoofServedGUAMIs, maxnoofSliceItems, maxnoofTACs, + maxnoofTAforMDT, maxnoofTAIforInactive, maxnoofTAIforPaging, maxnoofTAIforRestart, @@ -91,6 +154,7 @@ IMPORTS maxnoofTAIinAoI, maxnoofTimePeriods, maxnoofTNLAssociations, + maxnoofWLANName, maxnoofXnExtTLAs, maxnoofXnGTP-TLAs, maxnoofXnTLAs @@ -123,6 +187,7 @@ AdditionalDLUPTNLInformationForHOItem ::= SEQUENCE { } AdditionalDLUPTNLInformationForHOItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalRedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }, ... } @@ -143,6 +208,8 @@ AllocationAndRetentionPriority-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +Allowed-CAG-List-per-PLMN ::= SEQUENCE (SIZE(1..maxnoofAllowedCAGsperPLMN)) OF CAG-ID + AllowedNSSAI ::= SEQUENCE (SIZE(1..maxnoofAllowedS-NSSAIs)) OF AllowedNSSAI-Item AllowedNSSAI-Item ::= SEQUENCE { @@ -155,8 +222,42 @@ AllowedNSSAI-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +Allowed-PNI-NPN-List ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF Allowed-PNI-NPN-Item + +Allowed-PNI-NPN-Item ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + pNI-NPN-restricted ENUMERATED {restricted, not-restricted, ...}, + allowed-CAG-List-per-PLMN Allowed-CAG-List-per-PLMN, + iE-Extensions ProtocolExtensionContainer { {Allowed-PNI-NPN-Item-ExtIEs} } OPTIONAL, + ... +} + +Allowed-PNI-NPN-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + AllowedTACs ::= SEQUENCE (SIZE(1..maxnoofAllowedAreas)) OF TAC +AlternativeQoSParaSetIndex ::= INTEGER (1..8, ...) + +AlternativeQoSParaSetNotifyIndex ::= INTEGER (0..8, ...) + +AlternativeQoSParaSetList ::= SEQUENCE (SIZE(1..maxnoofQosParaSets)) OF AlternativeQoSParaSetItem + +AlternativeQoSParaSetItem ::= SEQUENCE { + alternativeQoSParaSetIndex AlternativeQoSParaSetIndex, + guaranteedFlowBitRateDL BitRate OPTIONAL, + guaranteedFlowBitRateUL BitRate OPTIONAL, + packetDelayBudget PacketDelayBudget OPTIONAL, + packetErrorRate PacketErrorRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AlternativeQoSParaSetItem-ExtIEs} } OPTIONAL, + ... +} + +AlternativeQoSParaSetItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + AMFName ::= PrintableString (SIZE(1..150, ...)) AMFPagingTarget ::= CHOICE { @@ -299,6 +400,8 @@ AssistanceDataForPaging ::= SEQUENCE { } AssistanceDataForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-NPN-PagingAssistanceInformation CRITICALITY ignore EXTENSION NPN-PagingAssistanceInformation PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore EXTENSION PagingAssisDataforCEcapabUE PRESENCE optional }, ... } @@ -322,11 +425,42 @@ AssociatedQosFlowItem ::= SEQUENCE { } AssociatedQosFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, ... } +AuthenticatedIndication ::= ENUMERATED {true, ...} + AveragingWindow ::= INTEGER (0..4095, ...) +AreaScopeOfMDT-NR ::= CHOICE { + cellBased CellBasedMDT-NR, + tABased TABasedMDT, + pLMNWide NULL, + tAIBased TAIBasedMDT, + ... +} + +AreaScopeOfMDT-EUTRA ::= CHOICE { + cellBased CellBasedMDT-EUTRA, + tABased TABasedMDT, + pLMNWide NULL, + tAIBased TAIBasedMDT, + ... +} + +AreaScopeOfNeighCellsList ::= SEQUENCE (SIZE(1..maxnoofFreqforMDT)) OF AreaScopeOfNeighCellsItem +AreaScopeOfNeighCellsItem ::= SEQUENCE { + nrFrequencyInfo NRFrequencyInfo, + pciListForMDT PCIListForMDT OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { AreaScopeOfNeighCellsItem-ExtIEs} } OPTIONAL, + ... +} + +AreaScopeOfNeighCellsItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- B BitRate ::= INTEGER (0..4000000000000, ...) @@ -369,11 +503,35 @@ BroadcastPLMNItem ::= SEQUENCE { } BroadcastPLMNItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional}| + {ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional}, ... } +BluetoothMeasurementConfiguration ::= SEQUENCE { + bluetoothMeasConfig BluetoothMeasConfig, + bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL, + bt-rssi ENUMERATED {true, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL, + ... +} + +BluetoothMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +BluetoothMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofBluetoothName)) OF BluetoothName + +BluetoothMeasConfig::= ENUMERATED {setup,...} + +BluetoothName ::= OCTET STRING (SIZE (1..248)) + +BurstArrivalTime ::= OCTET STRING + -- C +CAG-ID ::= BIT STRING (SIZE(32)) + CancelAllWarningMessages ::= ENUMERATED { true, ... @@ -431,6 +589,38 @@ CancelledCellsInTAI-NR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +CandidateCellList ::= SEQUENCE (SIZE(1.. maxnoofCandidateCells)) OF CandidateCell-Item + +CandidateCell-Item::= CHOICE { + candidateCGI CandidateCellID, + candidatePCI CandidatePCI, + choice-Extensions ProtocolIE-SingleContainer { { CandidateCell-Item-ExtIEs} } +} + +CandidateCell-Item-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +CandidateCellID::= SEQUENCE { + candidateCellID NR-CGI, + iE-Extensions ProtocolExtensionContainer { { CandidateCellID-ExtIEs} } OPTIONAL +} + +CandidateCellID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CandidatePCI::= SEQUENCE { + candidatePCI INTEGER (0..1007), + candidateNRARFCN INTEGER (0..3279165), + iE-Extensions ProtocolExtensionContainer { { CandidatePCI-ExtIEs} } OPTIONAL +} + +CandidatePCI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + Cause ::= CHOICE { radioNetwork CauseRadioNetwork, transport CauseTransport, @@ -522,7 +712,9 @@ CauseRadioNetwork ::= ENUMERATED { ..., n26-interface-not-available, release-due-to-pre-emption, - multiple-location-reporting-reference-ID-instances + multiple-location-reporting-reference-ID-instances, + rsn-not-available-for-the-up, + npn-access-denied } CauseTransport ::= ENUMERATED { @@ -531,6 +723,20 @@ CauseTransport ::= ENUMERATED { ... } +Cell-CAGInformation ::= SEQUENCE { + nR-CGI NR-CGI, + cellCAGList CellCAGList, + iE-Extensions ProtocolExtensionContainer { {Cell-CAGInformation-ExtIEs} } OPTIONAL, + ... +} + +Cell-CAGInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +CellCAGList ::= SEQUENCE (SIZE(1..maxnoofCAGSperCell)) OF CAG-ID + CellIDBroadcastEUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF CellIDBroadcastEUTRA-Item CellIDBroadcastEUTRA-Item ::= SEQUENCE { @@ -604,9 +810,18 @@ CellType-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +CEmodeBSupport-Indicator ::= ENUMERATED {supported,...} + + +CEmodeBrestricted ::= ENUMERATED { + restricted, + not-restricted, + ... +} + CNAssistedRANTuning ::= SEQUENCE { - expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, - iE-Extensions ProtocolExtensionContainer { {CNAssistedRANTuning-ExtIEs} } OPTIONAL, + expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CNAssistedRANTuning-ExtIEs} } OPTIONAL, ... } @@ -617,9 +832,9 @@ CNAssistedRANTuning-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { CNTypeRestrictionsForEquivalent ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalentItem ::= SEQUENCE { - plmnIdentity PLMNIdentity, - cn-Type ENUMERATED {epc-forbidden, fiveGC-forbidden, ...}, - iE-Extensions ProtocolExtensionContainer { {CNTypeRestrictionsForEquivalentItem-ExtIEs} } OPTIONAL, + plmnIdentity PLMNIdentity, + cn-Type ENUMERATED {epc-forbidden, fiveGC-forbidden, ...}, + iE-Extensions ProtocolExtensionContainer { {CNTypeRestrictionsForEquivalentItem-ExtIEs} } OPTIONAL, ... } @@ -702,16 +917,17 @@ ConfidentialityProtectionResult ::= ENUMERATED { CoreNetworkAssistanceInformationForInactive ::= SEQUENCE { uEIdentityIndexValue UEIdentityIndexValue, - uESpecificDRX PagingDRX OPTIONAL, + uESpecificDRX PagingDRX OPTIONAL, periodicRegistrationUpdateTimer PeriodicRegistrationUpdateTimer, - mICOModeIndication MICOModeIndication OPTIONAL, + mICOModeIndication MICOModeIndication OPTIONAL, tAIListForInactive TAIListForInactive, - expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, + expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, iE-Extensions ProtocolExtensionContainer { {CoreNetworkAssistanceInformationForInactive-ExtIEs} } OPTIONAL, ... } CoreNetworkAssistanceInformationForInactive-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PagingeDRXInformation CRITICALITY ignore EXTENSION PagingeDRXInformation PRESENCE optional }, ... } @@ -737,13 +953,15 @@ COUNTValueForPDCP-SN18-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +CoverageEnhancementLevel ::= OCTET STRING + CPTransportLayerInformation ::= CHOICE { endpointIPAddress TransportLayerAddress, choice-Extensions ProtocolIE-SingleContainer { {CPTransportLayerInformation-ExtIEs} } } CPTransportLayerInformation-ExtIEs NGAP-PROTOCOL-IES ::= { - { ID id-EndpointIPAddressAndPort CRITICALITY reject TYPE EndpointIPAddressAndPort PRESENCE mandatory}, + { ID id-EndpointIPAddressAndPort CRITICALITY reject TYPE EndpointIPAddressAndPort PRESENCE mandatory }, ... } @@ -774,6 +992,32 @@ CriticalityDiagnostics-IE-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +CellBasedMDT-NR::= SEQUENCE { + cellIdListforMDT CellIdListforMDT-NR, + iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-NR-ExtIEs} } OPTIONAL, + ... +} + +CellBasedMDT-NR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIdListforMDT-NR ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF NR-CGI + + +CellBasedMDT-EUTRA::= SEQUENCE { + cellIdListforMDT CellIdListforMDT-EUTRA, + iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-EUTRA-ExtIEs} } OPTIONAL, + ... +} + +CellBasedMDT-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIdListforMDT-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF EUTRA-CGI + + -- D DataCodingScheme ::= BIT STRING (SIZE(8)) @@ -802,12 +1046,71 @@ DataForwardingResponseDRBItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +DAPSRequestInfo ::= SEQUENCE { + dAPSIndicator ENUMERATED {daps-ho-required, ...}, + iE-Extensions ProtocolExtensionContainer { {DAPSRequestInfo-ExtIEs} } OPTIONAL, + ... +} + +DAPSRequestInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DAPSResponseInfoList ::= SEQUENCE (SIZE(1.. maxnoofDRBs)) OF DAPSResponseInfoItem + +DAPSResponseInfoItem ::= SEQUENCE { + dRB-ID DRB-ID, + dAPSResponseInfo DAPSResponseInfo, + iE-Extension ProtocolExtensionContainer { {DAPSResponseInfoItem-ExtIEs} } OPTIONAL, + ... +} + +DAPSResponseInfoItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DAPSResponseInfo ::= SEQUENCE { + dapsresponseindicator ENUMERATED {daps-ho-accepted, daps-ho-not-accepted, ...}, + iE-Extensions ProtocolExtensionContainer { { DAPSResponseInfo-ExtIEs} } OPTIONAL, + ... +} + +DAPSResponseInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +DataForwardingResponseERABList ::= SEQUENCE (SIZE(1..maxnoofE-RABs)) OF DataForwardingResponseERABListItem + +DataForwardingResponseERABListItem ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + dLForwardingUP-TNLInformation UPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {DataForwardingResponseERABListItem-ExtIEs} } OPTIONAL, + ... +} + +DataForwardingResponseERABListItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + DelayCritical ::= ENUMERATED { delay-critical, non-delay-critical, ... } +DL-CP-SecurityInformation ::= SEQUENCE { + dl-NAS-MAC DL-NAS-MAC, + iE-Extensions ProtocolExtensionContainer { { DL-CP-SecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +DL-CP-SecurityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DL-NAS-MAC ::= BIT STRING (SIZE (16)) + DLForwarding ::= ENUMERATED { dl-forwarding-proposed, ... @@ -912,6 +1215,7 @@ DRBsToQosFlowsMappingItem ::= SEQUENCE { } DRBsToQosFlowsMappingItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional }, ... } @@ -930,11 +1234,62 @@ Dynamic5QIDescriptor ::= SEQUENCE { } Dynamic5QIDescriptor-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-ExtendedPacketDelayBudget CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetDL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetUL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }, ... } -- E +EarlyStatusTransfer-TransparentContainer ::= SEQUENCE { + procedureStage ProcedureStageChoice, + iE-Extensions ProtocolExtensionContainer { {EarlyStatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +EarlyStatusTransfer-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ProcedureStageChoice ::= CHOICE { + first-dl-count FirstDLCount, + choice-Extensions ProtocolIE-SingleContainer { {ProcedureStageChoice-ExtIEs} } +} + +ProcedureStageChoice-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +FirstDLCount ::= SEQUENCE { + dRBsSubjectToEarlyStatusTransfer DRBsSubjectToEarlyStatusTransfer-List, + iE-Extension ProtocolExtensionContainer { {FirstDLCount-ExtIEs} } OPTIONAL, + ... +} + +FirstDLCount-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsSubjectToEarlyStatusTransfer-List ::= SEQUENCE (SIZE (1.. maxnoofDRBs)) OF DRBsSubjectToEarlyStatusTransfer-Item + +DRBsSubjectToEarlyStatusTransfer-Item ::= SEQUENCE { + dRB-ID DRB-ID, + firstDLCOUNT DRBStatusDL, + iE-Extension ProtocolExtensionContainer { { DRBsSubjectToEarlyStatusTransfer-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsSubjectToEarlyStatusTransfer-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +EDT-Session ::= ENUMERATED { + true, + ... +} + EmergencyAreaID ::= OCTET STRING (SIZE(3)) EmergencyAreaIDBroadcastEUTRA ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaIDBroadcastEUTRA-Item @@ -1015,12 +1370,36 @@ EmergencyServiceTargetCN ::= ENUMERATED { ... } +ENB-ID ::= CHOICE { + macroENB-ID BIT STRING (SIZE(20)), + homeENB-ID BIT STRING (SIZE(28)), + short-macroENB-ID BIT STRING (SIZE(18)), + long-macroENB-ID BIT STRING (SIZE(21)), + choice-Extensions ProtocolIE-SingleContainer { { ENB-ID-ExtIEs} } +} + +ENB-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +Enhanced-CoverageRestriction ::= ENUMERATED {restricted, ... } + + +Extended-ConnectedTime ::= INTEGER (0..255) + EN-DCSONConfigurationTransfer ::= OCTET STRING EndpointIPAddressAndPort ::=SEQUENCE { endpointIPAddress TransportLayerAddress, portNumber PortNumber, - iE-Extensions ProtocolExtensionContainer { { EndpointIPAddressAndPort-ExtIEs} } OPTIONAL + iE-Extensions ProtocolExtensionContainer { { EndpointIPAddressAndPort-ExtIEs} } OPTIONAL +} + +EndIndication ::= ENUMERATED { + no-further-data, + further-data-exists, + ... } EndpointIPAddressAndPort-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { @@ -1141,8 +1520,58 @@ ExpectedUEMovingTrajectoryItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +ExtendedPacketDelayBudget ::= INTEGER (1..65535, ...) + +ExtendedRATRestrictionInformation ::= SEQUENCE { + primaryRATRestriction BIT STRING (SIZE(8, ...)), + secondaryRATRestriction BIT STRING (SIZE(8, ...)), + iE-Extensions ProtocolExtensionContainer { {ExtendedRATRestrictionInformation-ExtIEs} } OPTIONAL, + ... +} + +ExtendedRATRestrictionInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExtendedRNC-ID ::= INTEGER (4096..65535) + +ExtendedSliceSupportList ::= SEQUENCE (SIZE(1..maxnoofExtSliceItems)) OF SliceSupportItem + + +EventTrigger::= CHOICE { + outOfCoverage ENUMERATED {true, ...}, + eventL1LoggedMDTConfig EventL1LoggedMDTConfig, + ... +} +EventL1LoggedMDTConfig ::= SEQUENCE { + l1Threshold MeasurementThresholdL1LoggedMDT, + hysteresis Hysteresis, + timeToTrigger TimeToTrigger, + iE-Extensions ProtocolExtensionContainer { { EventL1LoggedMDTConfig-ExtIEs} } OPTIONAL, + ... +} + +EventL1LoggedMDTConfig-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MeasurementThresholdL1LoggedMDT ::= CHOICE { + threshold-RSRP Threshold-RSRP, + threshold-RSRQ Threshold-RSRQ, + ... +} + -- F +FailureIndication ::= SEQUENCE { + uERLFReportContainer UERLFReportContainer, + iE-Extensions ProtocolExtensionContainer { { FailureIndication-ExtIEs} } OPTIONAL +} + +FailureIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + FiveG-S-TMSI ::= SEQUENCE { aMFSetID AMFSetID, aMFPointer AMFPointer, @@ -1174,6 +1603,26 @@ ForbiddenAreaInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC +FromEUTRANtoNGRAN ::= SEQUENCE { + sourceeNBID IntersystemSONeNBID, + targetNGRANnodeID IntersystemSONNGRANnodeID, + iE-Extensions ProtocolExtensionContainer { { FromEUTRANtoNGRAN-ExtIEs} } OPTIONAL +} + +FromEUTRANtoNGRAN-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FromNGRANtoEUTRAN ::= SEQUENCE { + sourceNGRANnodeID IntersystemSONNGRANnodeID, + targeteNBID IntersystemSONeNBID, + iE-Extensions ProtocolExtensionContainer { { FromNGRANtoEUTRAN-ExtIEs} } OPTIONAL +} + +FromNGRANtoEUTRAN-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- G GBR-QosInformation ::= SEQUENCE { @@ -1189,8 +1638,21 @@ GBR-QosInformation ::= SEQUENCE { } GBR-QosInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AlternativeQoSParaSetList CRITICALITY ignore EXTENSION AlternativeQoSParaSetList PRESENCE optional }, ...} +GlobalENB-ID ::= SEQUENCE { + pLMNidentity PLMNIdentity, + eNB-ID ENB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + GlobalGNB-ID ::= SEQUENCE { pLMNIdentity PLMNIdentity, gNB-ID GNB-ID, @@ -1213,6 +1675,19 @@ GlobalN3IWF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +GlobalLine-ID ::= SEQUENCE { + globalLineIdentity GlobalLineIdentity, + lineType LineType OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {GlobalLine-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalLine-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalLineIdentity ::= OCTET STRING + GlobalNgENB-ID ::= SEQUENCE { pLMNIdentity PLMNIdentity, ngENB-ID NgENB-ID, @@ -1225,13 +1700,51 @@ GlobalNgENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { } GlobalRANNodeID ::= CHOICE { - globalGNB-ID GlobalGNB-ID, - globalNgENB-ID GlobalNgENB-ID, - globalN3IWF-ID GlobalN3IWF-ID, + globalGNB-ID GlobalGNB-ID, + globalNgENB-ID GlobalNgENB-ID, + globalN3IWF-ID GlobalN3IWF-ID, choice-Extensions ProtocolIE-SingleContainer { {GlobalRANNodeID-ExtIEs} } } GlobalRANNodeID-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-GlobalTNGF-ID CRITICALITY reject TYPE GlobalTNGF-ID PRESENCE mandatory }| + { ID id-GlobalTWIF-ID CRITICALITY reject TYPE GlobalTWIF-ID PRESENCE mandatory }| + { ID id-GlobalW-AGF-ID CRITICALITY reject TYPE GlobalW-AGF-ID PRESENCE mandatory }, + ... +} + +GlobalTNGF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tNGF-ID TNGF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalTNGF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalTNGF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +GlobalTWIF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tWIF-ID TWIF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalTWIF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalTWIF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +GlobalW-AGF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + w-AGF-ID W-AGF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalW-AGF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalW-AGF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } @@ -1270,6 +1783,7 @@ GUAMI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +GUAMIType ::= ENUMERATED {native, mapped, ...} -- H @@ -1282,9 +1796,10 @@ HandoverCommandTransfer ::= SEQUENCE { } HandoverCommandTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-AdditionalDLForwardingUPTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional}| - { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional}| - { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional}, + { ID id-AdditionalDLForwardingUPTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingResponseERABList CRITICALITY ignore EXTENSION DataForwardingResponseERABList PRESENCE optional }, ... } @@ -1316,8 +1831,12 @@ HandoverRequestAcknowledgeTransfer ::= SEQUENCE { HandoverRequestAcknowledgeTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { { ID id-AdditionalDLUPTNLInformationForHOList CRITICALITY ignore EXTENSION AdditionalDLUPTNLInformationForHOList PRESENCE optional }| - { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional}| - { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional}, + { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingResponseERABList CRITICALITY ignore EXTENSION DataForwardingResponseERABList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }, ... } @@ -1346,11 +1865,52 @@ HandoverType ::= ENUMERATED { intra5gs, fivegs-to-eps, eps-to-5gs, + ..., + fivegs-to-utran +} + +HFCNode-ID ::= OCTET STRING + +HOReport::= SEQUENCE { + handoverReportType ENUMERATED {ho-too-early, ho-to-wrong-cell, intersystem-ping-pong, ...}, + handoverCause Cause, + sourcecellCGI NGRAN-CGI, + targetcellCGI NGRAN-CGI, + reestablishmentcellCGI NGRAN-CGI OPTIONAL, + -- This IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" -- + sourcecellC-RNTI BIT STRING (SIZE(16)), + targetcellinE-UTRAN EUTRA-CGI OPTIONAL, + -- This IE shall be present if the Handover Report Type IE is set to the value "Inter System ping-pong" -- + mobilityInformation MobilityInformation, + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { HOReport-ExtIEs} } OPTIONAL +} + +HOReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } + +Hysteresis ::= INTEGER (0..30) + -- I +IAB-Authorized ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +IAB-Supported ::= ENUMERATED { + true, + ... +} + +IABNodeIndication ::= ENUMERATED { + true, + ... +} + IMSVoiceSupportIndicator ::= ENUMERATED { supported, not-supported, @@ -1388,10 +1948,140 @@ IntendedNumberOfPagingAttempts ::= INTEGER (1..16, ...) InterfacesToTrace ::= BIT STRING (SIZE(8)) +ImmediateMDTNr ::= SEQUENCE { + measurementsToActivate MeasurementsToActivate, + m1Configuration M1Configuration OPTIONAL, + m4Configuration M4Configuration OPTIONAL, + m5Configuration M5Configuration OPTIONAL, + m6Configuration M6Configuration OPTIONAL, + m7Configuration M7Configuration OPTIONAL, + bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL, + wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL, + mDT-Location-Info MDT-Location-Info OPTIONAL, + sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { ImmediateMDTNr-ExtIEs} } OPTIONAL, + ... +} + +ImmediateMDTNr-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +InterSystemFailureIndication ::= SEQUENCE { + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { InterSystemFailureIndication-ExtIEs} } OPTIONAL +} + +InterSystemFailureIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONConfigurationTransfer ::= SEQUENCE { + transferType IntersystemSONTransferType, + intersystemSONInformation IntersystemSONInformation, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONConfigurationTransfer-ExtIEs} } OPTIONAL +} + +IntersystemSONConfigurationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONTransferType ::= CHOICE { + fromEUTRANtoNGRAN FromEUTRANtoNGRAN, + fromNGRANtoEUTRAN FromNGRANtoEUTRAN, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONTransferType-ExtIEs} } +} +IntersystemSONTransferType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemSONeNBID ::= SEQUENCE { + globaleNBID GlobalENB-ID, + selectedEPSTAI EPS-TAI, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONeNBID-ExtIEs} } OPTIONAL +} + +IntersystemSONeNBID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONNGRANnodeID ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONNGRANnodeID-ExtIEs} } OPTIONAL +} + +IntersystemSONNGRANnodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONInformation ::= CHOICE { + intersystemSONInformationReport IntersystemSONInformationReport, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformation-ExtIEs} } +} + +IntersystemSONInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemSONInformationReport::= CHOICE { + hOReportInformation InterSystemHOReport, + failureIndicationInformation InterSystemFailureIndication, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationReport-ExtIEs} } +} + +IntersystemSONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +InterSystemHOReport ::= SEQUENCE { + handoverReportType InterSystemHandoverReportType, + iE-Extensions ProtocolExtensionContainer { { InterSystemHOReport-ExtIEs} } OPTIONAL +} + +InterSystemHOReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +InterSystemHandoverReportType ::= CHOICE { + tooearlyIntersystemHO TooearlyIntersystemHO, + intersystemUnnecessaryHO IntersystemUnnecessaryHO, + choice-Extensions ProtocolIE-SingleContainer { { InterSystemHandoverReportType-ExtIEs} } +} + +InterSystemHandoverReportType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemUnnecessaryHO ::= SEQUENCE { + sourcecellID EUTRA-CGI, + failurecellID NGRAN-CGI, + earlyIRATHO ENUMERATED{no, yes}, + candidateCellList CandidateCellList, + iE-Extensions ProtocolExtensionContainer { { IntersystemUnnecessaryHO-ExtIEs} } OPTIONAL +} + +IntersystemUnnecessaryHO-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- J -- K -- L +LAC ::= OCTET STRING (SIZE (2)) + +LAI ::= SEQUENCE { + pLMNidentity PLMNIdentity, + lAC LAC, + iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL, + ... +} + +LAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + LastVisitedCellInformation ::= CHOICE { nGRANCell LastVisitedNGRANCellInformation, eUTRANCell LastVisitedEUTRANCellInformation, @@ -1434,6 +2124,13 @@ LastVisitedNGRANCellInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { LastVisitedUTRANCellInformation ::= OCTET STRING +LineType ::= ENUMERATED { + dsl, + pon, + ... +} + + LocationReportingAdditionalInfo ::= ENUMERATED { includePSCell, ... @@ -1456,11 +2153,73 @@ LocationReportingRequestType-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +LoggedMDTNr ::= SEQUENCE { + loggingInterval LoggingInterval, + loggingDuration LoggingDuration, + loggedMDTTrigger LoggedMDTTrigger, + bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL, + wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL, + sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL, + areaScopeOfNeighCellsList AreaScopeOfNeighCellsList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {LoggedMDTNr-ExtIEs} } OPTIONAL, + ... +} + +LoggedMDTNr-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LoggingInterval ::= ENUMERATED { + ms320, ms640, ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440, + infinity, + ... +} + +LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120, ...} + +Links-to-log ::= ENUMERATED { + uplink, + downlink, + both-uplink-and-downlink, + ... +} + +LoggedMDTTrigger ::= CHOICE{ + periodical NULL, + eventTrigger EventTrigger, + ... +} + +LTEM-Indication ::= ENUMERATED {lte-m,...} + +LTEUERLFReportContainer ::= OCTET STRING + +LTEV2XServicesAuthorized ::= SEQUENCE { + vehicleUE VehicleUE OPTIONAL, + pedestrianUE PedestrianUE OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {LTEV2XServicesAuthorized-ExtIEs} } OPTIONAL, + ... +} + +LTEV2XServicesAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LTEUESidelinkAggregateMaximumBitrate ::= SEQUENCE { + uESidelinkAggregateMaximumBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { {LTEUE-Sidelink-Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL, + ... +} + +LTEUE-Sidelink-Aggregate-MaximumBitrates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- M MaskedIMEISV ::= BIT STRING (SIZE(64)) -MaximumDataBurstVolume ::= INTEGER (0..4095, ...) +MaximumDataBurstVolume ::= INTEGER (0..4095, ..., 4096.. 2000000) MessageIdentifier ::= BIT STRING (SIZE(16)) @@ -1475,6 +2234,8 @@ MICOModeIndication ::= ENUMERATED { ... } +MobilityInformation ::= BIT STRING (SIZE(16)) + MobilityRestrictionList ::= SEQUENCE { servingPLMN PLMNIdentity, equivalentPLMNs EquivalentPLMNs OPTIONAL, @@ -1486,12 +2247,175 @@ MobilityRestrictionList ::= SEQUENCE { } MobilityRestrictionList-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-LastEUTRAN-PLMNIdentity CRITICALITY ignore EXTENSION PLMNIdentity PRESENCE optional }| - { ID id-CNTypeRestrictionsForServing CRITICALITY ignore EXTENSION CNTypeRestrictionsForServing PRESENCE optional}| - { ID id-CNTypeRestrictionsForEquivalent CRITICALITY ignore EXTENSION CNTypeRestrictionsForEquivalent PRESENCE optional}, + { ID id-LastEUTRAN-PLMNIdentity CRITICALITY ignore EXTENSION PLMNIdentity PRESENCE optional }| + { ID id-CNTypeRestrictionsForServing CRITICALITY ignore EXTENSION CNTypeRestrictionsForServing PRESENCE optional }| + { ID id-CNTypeRestrictionsForEquivalent CRITICALITY ignore EXTENSION CNTypeRestrictionsForEquivalent PRESENCE optional }| + { ID id-NPN-MobilityInformation CRITICALITY reject EXTENSION NPN-MobilityInformation PRESENCE optional }, + ... +} + +MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMNIdentity + +MDT-Configuration ::= SEQUENCE { + mdt-Config-NR MDT-Configuration-NR OPTIONAL, + mdt-Config-EUTRA MDT-Configuration-EUTRA OPTIONAL, + ... +} + +MDT-Configuration-NR ::= SEQUENCE { + mdt-Activation MDT-Activation, + areaScopeOfMDT AreaScopeOfMDT-NR, + mDTModeNr MDTModeNr, + signallingBasedMDTPLMNList MDTPLMNList, + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-NR-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-NR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Configuration-EUTRA ::= SEQUENCE { + mdt-Activation MDT-Activation, + areaScopeOfMDT AreaScopeOfMDT-EUTRA, + mDTMode MDTModeEutra, + signallingBasedMDTPLMNList MDTPLMNList, + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-EUTRA-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Activation ::= ENUMERATED { + immediate-MDT-only, + immediate-MDT-and-Trace, + logged-MDT-only, + ... +} + +MDTModeNr ::= CHOICE { + immediateMDTNr ImmediateMDTNr, + loggedMDTNr LoggedMDTNr, ... } +MDTModeEutra ::= OCTET STRING + +MeasurementsToActivate ::= BIT STRING(SIZE(8)) + +M1Configuration ::= SEQUENCE { + m1reportingTrigger M1ReportingTrigger, + m1thresholdEventA2 M1ThresholdEventA2 OPTIONAL, +-- Included in case of event-triggered, or event-triggered periodic reporting for measurement M1 + m1periodicReporting M1PeriodicReporting OPTIONAL, +-- Included in case of periodic or event-triggered periodic reporting + iE-Extensions ProtocolExtensionContainer { { M1Configuration-ExtIEs} } OPTIONAL, + ... +} + +M1Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M1ReportingTrigger ::= ENUMERATED{ + periodic, + a2eventtriggered, + a2eventtriggered-periodic, + ... +} + +M1ThresholdEventA2 ::= SEQUENCE { + threshold-RSRP Threshold-RSRP, + threshold-RSRQ Threshold-RSRQ, + threshold-SINR Threshold-SINR, + iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL, + ... +} + +M1ThresholdEventA2-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M1PeriodicReporting ::= SEQUENCE { + reportInterval ReportIntervalMDT, + reportAmount ReportAmountMDT, + iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL, + ... +} + +M1PeriodicReporting-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M4Configuration ::= SEQUENCE { + m4period M4period, + m4-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL, + ... +} + +M4Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + +M5Configuration ::= SEQUENCE { + m5period M5period, + m5-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M5Configuration-ExtIEs} } OPTIONAL, + ... +} + +M5Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + +M6Configuration ::= SEQUENCE { + m6report-Interval M6report-Interval, + m6-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M6Configuration-ExtIEs} } OPTIONAL, + ... +} + +M6Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M6report-Interval ::= ENUMERATED { + ms120, ms240, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30, + ... +} + + +M7Configuration ::= SEQUENCE { + m7period M7period, + m7-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M7Configuration-ExtIEs} } OPTIONAL, + ... +} + +M7Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M7period ::= INTEGER(1..60, ...) + +MDT-Location-Info ::= SEQUENCE { + mDT-Location-Infoormation MDT-Location-Information, + iE-Extensions ProtocolExtensionContainer { { MDT-Location-Info-ExtIEs} } OPTIONAL, + ... +} + +MDT-Location-Info-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Location-Information::= BIT STRING (SIZE (8)) -- N @@ -1508,6 +2432,39 @@ NAS-PDU ::= OCTET STRING NASSecurityParametersFromNGRAN ::= OCTET STRING +NB-IoT-DefaultPagingDRX ::= ENUMERATED { + rf128, rf256, rf512, rf1024, + ... +} + +NB-IoT-PagingDRX ::= ENUMERATED { + rf32, rf64, rf128, rf256, rf512, rf1024, + ... +} + +NB-IoT-Paging-eDRXCycle ::= ENUMERATED { + hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024, + ... +} + +NB-IoT-Paging-TimeWindow ::= ENUMERATED { + s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, + ... +} + +NB-IoT-Paging-eDRXInfo ::= SEQUENCE { + nB-IoT-Paging-eDRXCycle NB-IoT-Paging-eDRXCycle, + nB-IoT-Paging-TimeWindow NB-IoT-Paging-TimeWindow OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { NB-IoT-Paging-eDRXInfo-ExtIEs} } OPTIONAL, + ... +} + +NB-IoT-Paging-eDRXInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NB-IoT-UEPriority ::= INTEGER (0..255, ...) + NetworkInstance ::= INTEGER (1..256, ...) NewSecurityContextInd ::= ENUMERATED { @@ -1534,6 +2491,11 @@ NgENB-ID-ExtIEs NGAP-PROTOCOL-IES ::= { ... } +NotifySourceNGRANNode ::= ENUMERATED { + notifySource, + ... +} + NGRAN-CGI ::= CHOICE { nR-CGI NR-CGI, eUTRA-CGI EUTRA-CGI, @@ -1547,9 +2509,9 @@ NGRAN-CGI-ExtIEs NGAP-PROTOCOL-IES ::= { NGRAN-TNLAssociationToRemoveList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF NGRAN-TNLAssociationToRemoveItem NGRAN-TNLAssociationToRemoveItem::= SEQUENCE { - tNLAssociationTransportLayerAddress CPTransportLayerInformation, - tNLAssociationTransportLayerAddressAMF CPTransportLayerInformation OPTIONAL, - iE-Extensions ProtocolExtensionContainer { { NGRAN-TNLAssociationToRemoveItem-ExtIEs} } OPTIONAL + tNLAssociationTransportLayerAddress CPTransportLayerInformation, + tNLAssociationTransportLayerAddressAMF CPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { NGRAN-TNLAssociationToRemoveItem-ExtIEs} } OPTIONAL } NGRAN-TNLAssociationToRemoveItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { @@ -1558,6 +2520,8 @@ NGRAN-TNLAssociationToRemoveItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { NGRANTraceID ::= OCTET STRING (SIZE(8)) +NID ::= BIT STRING (SIZE(44)) + NonDynamic5QIDescriptor ::= SEQUENCE { fiveQI FiveQI, priorityLevelQos PriorityLevelQos OPTIONAL, @@ -1568,6 +2532,8 @@ NonDynamic5QIDescriptor ::= SEQUENCE { } NonDynamic5QIDescriptor-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CNPacketDelayBudgetDL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetUL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }, ... } @@ -1584,6 +2550,44 @@ NotificationControl ::= ENUMERATED { ... } +NPN-AccessInformation ::= CHOICE { + pNI-NPN-Access-Information CellCAGList, + choice-Extensions ProtocolIE-SingleContainer { {NPN-AccessInformation-ExtIEs} } +} + +NPN-AccessInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NPN-MobilityInformation ::= CHOICE { + sNPN-MobilityInformation SNPN-MobilityInformation, + pNI-NPN-MobilityInformation PNI-NPN-MobilityInformation, + choice-Extensions ProtocolIE-SingleContainer { {NPN-MobilityInformation-ExtIEs} } +} + +NPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +NPN-PagingAssistanceInformation ::= CHOICE { + pNI-NPN-PagingAssistance Allowed-PNI-NPN-List, + choice-Extensions ProtocolIE-SingleContainer { {NPN-PagingAssistanceInformation-ExtIEs} } +} + +NPN-PagingAssistanceInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NPN-Support ::= CHOICE { + sNPN NID, + choice-Extensions ProtocolIE-SingleContainer { {NPN-Support-ExtIEs} } +} + +NPN-Support-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + NRCellIdentity ::= BIT STRING (SIZE(36)) NR-CGI ::= SEQUENCE { @@ -1605,12 +2609,78 @@ NRencryptionAlgorithms ::= BIT STRING (SIZE(16, ...)) NRintegrityProtectionAlgorithms ::= BIT STRING (SIZE(16, ...)) +NRMobilityHistoryReport ::= OCTET STRING + NRPPa-PDU ::= OCTET STRING +NRUERLFReportContainer ::= OCTET STRING + NumberOfBroadcasts ::= INTEGER (0..65535) NumberOfBroadcastsRequested ::= INTEGER (0..65535) +NRARFCN ::= INTEGER (0.. maxNRARFCN) + +NRFrequencyBand ::= INTEGER (1..1024, ...) + +NRFrequencyBand-List ::= SEQUENCE (SIZE(1..maxnoofNRCellBands)) OF NRFrequencyBandItem + +NRFrequencyBandItem ::= SEQUENCE { + nr-frequency-band NRFrequencyBand, + iE-Extension ProtocolExtensionContainer { {NRFrequencyBandItem-ExtIEs} } OPTIONAL, + ... +} + +NRFrequencyBandItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NRFrequencyInfo ::= SEQUENCE { + nrARFCN NRARFCN, + frequencyBand-List NRFrequencyBand-List, + iE-Extension ProtocolExtensionContainer { {NRFrequencyInfo-ExtIEs} } OPTIONAL, + ... +} + +NRFrequencyInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NR-PCI ::= INTEGER (0..1007, ...) + +NRV2XServicesAuthorized ::= SEQUENCE { + vehicleUE VehicleUE OPTIONAL, + pedestrianUE PedestrianUE OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NRV2XServicesAuthorized-ExtIEs} } OPTIONAL, + ... +} + +NRV2XServicesAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +VehicleUE ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +PedestrianUE ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +NRUESidelinkAggregateMaximumBitrate ::= SEQUENCE { + uESidelinkAggregateMaximumBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { {NRUESidelinkAggregateMaximumBitrate-ExtIEs} } OPTIONAL, + ... +} + +NRUESidelinkAggregateMaximumBitrate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- O OverloadAction ::= ENUMERATED { @@ -1661,6 +2731,17 @@ PacketErrorRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { PacketLossRate ::= INTEGER (0..1000, ...) +PagingAssisDataforCEcapabUE ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + coverageEnhancementLevel CoverageEnhancementLevel, + iE-Extensions ProtocolExtensionContainer { { PagingAssisDataforCEcapabUE-ExtIEs} } OPTIONAL, + ... +} + +PagingAssisDataforCEcapabUE-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + PagingAttemptInformation ::= SEQUENCE { pagingAttemptCount PagingAttemptCount, intendedNumberOfPagingAttempts IntendedNumberOfPagingAttempts, @@ -1700,6 +2781,37 @@ PagingPriority ::= ENUMERATED { ... } +PagingeDRXInformation ::= SEQUENCE { + paging-eDRX-Cycle Paging-eDRX-Cycle, + paging-Time-Window Paging-Time-Window OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PagingeDRXInformation-ExtIEs} } OPTIONAL, + ... +} + +PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Paging-eDRX-Cycle ::= ENUMERATED { + hfhalf, hf1, hf2, hf4, hf6, + hf8, hf10, hf12, hf14, hf16, + hf32, hf64, hf128, hf256, + ... +} + + +Paging-Time-Window ::= ENUMERATED { + s1, s2, s3, s4, s5, + s6, s7, s8, s9, s10, + s11, s12, s13, s14, s15, s16, + ... +} + +PagingProbabilityInformation ::= ENUMERATED { + p00, p05, p10, p15, p20, p25, p30, p35, p40, p45, p50, p55, p60, p65, p70, p75, p80, p85, p90, p95, p100, + ... +} + PathSwitchRequestAcknowledgeTransfer ::= SEQUENCE { uL-NGU-UP-TNLInformation UPTransportLayerInformation OPTIONAL, securityIndication SecurityIndication OPTIONAL, @@ -1708,7 +2820,9 @@ PathSwitchRequestAcknowledgeTransfer ::= SEQUENCE { } PathSwitchRequestAcknowledgeTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, + { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, ... } @@ -1732,7 +2846,12 @@ PathSwitchRequestTransfer ::= SEQUENCE { } PathSwitchRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-AdditionalDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }, + { ID id-AdditionalDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantDL-NGU-TNLInformationReused CRITICALITY ignore EXTENSION DL-NGU-TNLInformationReused PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }, ... } @@ -1746,6 +2865,51 @@ PathSwitchRequestUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +PC5QoSParameters ::= SEQUENCE { + pc5QoSFlowList PC5QoSFlowList, + pc5LinkAggregatedBitRates BitRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { PC5QoSParameters-ExtIEs} } OPTIONAL, + ... +} + +PC5QoSParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF PC5QoSFlowItem + +PC5QoSFlowItem::= SEQUENCE { + pQI FiveQI, + pc5FlowBitRates PC5FlowBitRates OPTIONAL, + range Range OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { PC5QoSFlowItem-ExtIEs} } OPTIONAL, + ... +} + +PC5QoSFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PC5FlowBitRates ::= SEQUENCE { + guaranteedFlowBitRate BitRate, + maximumFlowBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { { PC5FlowBitRates-ExtIEs} } OPTIONAL, + ... +} + +PC5FlowBitRates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PCIListForMDT ::= SEQUENCE (SIZE(1.. maxnoofNeighPCIforMDT)) OF NR-PCI + +PrivacyIndicator ::= ENUMERATED { + immediate-MDT, + logged-MDT, + ... +} + PDUSessionAggregateMaximumBitRate ::= SEQUENCE { pDUSessionAggregateMaximumBitRateDL BitRate, pDUSessionAggregateMaximumBitRateUL BitRate, @@ -1798,6 +2962,33 @@ PDUSessionResourceFailedToModifyItemModRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +PDUSessionResourceFailedToResumeListRESReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToResumeItemRESReq + +PDUSessionResourceFailedToResumeItemRESReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToResumeItemRESReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToResumeItemRESReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSessionResourceFailedToResumeListRESRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToResumeItemRESRes + +PDUSessionResourceFailedToResumeItemRESRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToResumeItemRESRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToResumeItemRESRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + PDUSessionResourceFailedToSetupListCxtFail ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupItemCxtFail ::= SEQUENCE { @@ -1943,6 +3134,8 @@ PDUSessionResourceModifyConfirmTransfer ::= SEQUENCE { } PDUSessionResourceModifyConfirmTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, ... } @@ -1962,13 +3155,15 @@ PDUSessionResourceModifyRequestTransfer ::= SEQUENCE { } PDUSessionResourceModifyRequestTransferIEs NGAP-PROTOCOL-IES ::= { - { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| - { ID id-UL-NGU-UP-TNLModifyList CRITICALITY reject TYPE UL-NGU-UP-TNLModifyList PRESENCE optional }| - { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| - { ID id-QosFlowAddOrModifyRequestList CRITICALITY reject TYPE QosFlowAddOrModifyRequestList PRESENCE optional }| - { ID id-QosFlowToReleaseList CRITICALITY reject TYPE QosFlowListWithCause PRESENCE optional }| - { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| - { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }, + { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| + { ID id-UL-NGU-UP-TNLModifyList CRITICALITY reject TYPE UL-NGU-UP-TNLModifyList PRESENCE optional }| + { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| + { ID id-QosFlowAddOrModifyRequestList CRITICALITY reject TYPE QosFlowAddOrModifyRequestList PRESENCE optional }| + { ID id-QosFlowToReleaseList CRITICALITY reject TYPE QosFlowListWithCause PRESENCE optional }| + { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }, ... } @@ -1983,7 +3178,11 @@ PDUSessionResourceModifyResponseTransfer ::= SEQUENCE { } PDUSessionResourceModifyResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, + { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, ... } @@ -1995,8 +3194,11 @@ PDUSessionResourceModifyIndicationTransfer ::= SEQUENCE { } PDUSessionResourceModifyIndicationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }| - { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional }, + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }| + { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional }| + { ID id-RedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }, ... } @@ -2173,6 +3375,32 @@ PDUSessionResourceReleaseResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +PDUSessionResourceResumeListRESReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceResumeItemRESReq + +PDUSessionResourceResumeItemRESReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextResumeRequestTransfer OCTET STRING (CONTAINING UEContextResumeRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceResumeItemRESReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceResumeItemRESReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceResumeListRESRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceResumeItemRESRes + +PDUSessionResourceResumeItemRESRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextResumeResponseTransfer OCTET STRING (CONTAINING UEContextResumeResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceResumeItemRESRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceResumeItemRESRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + PDUSessionResourceSecondaryRATUsageList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageItem ::= SEQUENCE { @@ -2262,15 +3490,20 @@ PDUSessionResourceSetupRequestTransfer ::= SEQUENCE { } PDUSessionResourceSetupRequestTransferIEs NGAP-PROTOCOL-IES ::= { - { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| - { ID id-UL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformation PRESENCE mandatory }| - { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| - { ID id-DataForwardingNotPossible CRITICALITY reject TYPE DataForwardingNotPossible PRESENCE optional }| - { ID id-PDUSessionType CRITICALITY reject TYPE PDUSessionType PRESENCE mandatory }| - { ID id-SecurityIndication CRITICALITY reject TYPE SecurityIndication PRESENCE optional }| - { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| - { ID id-QosFlowSetupRequestList CRITICALITY reject TYPE QosFlowSetupRequestList PRESENCE mandatory }| - { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }, + { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| + { ID id-UL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformation PRESENCE mandatory }| + { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingNotPossible CRITICALITY reject TYPE DataForwardingNotPossible PRESENCE optional }| + { ID id-PDUSessionType CRITICALITY reject TYPE PDUSessionType PRESENCE mandatory }| + { ID id-SecurityIndication CRITICALITY reject TYPE SecurityIndication PRESENCE optional }| + { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| + { ID id-QosFlowSetupRequestList CRITICALITY reject TYPE QosFlowSetupRequestList PRESENCE mandatory }| + { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-RedundantPDUSessionInformation CRITICALITY ignore TYPE RedundantPDUSessionInformation PRESENCE optional }, ... } @@ -2284,6 +3517,10 @@ PDUSessionResourceSetupResponseTransfer ::= SEQUENCE { } PDUSessionResourceSetupResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }, ... } @@ -2298,6 +3535,19 @@ PDUSessionResourceSetupUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +PDUSessionResourceSuspendListSUSReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSuspendItemSUSReq + +PDUSessionResourceSuspendItemSUSReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextSuspendRequestTransfer OCTET STRING (CONTAINING UEContextSuspendRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSuspendItemSUSReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSuspendItemSUSReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + PDUSessionResourceSwitchedList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedItem ::= SEQUENCE { @@ -2359,7 +3609,7 @@ PDUSessionType ::= ENUMERATED { } PDUSessionUsageReport ::= SEQUENCE { - rATType ENUMERATED {nr, eutra, ...}, + rATType ENUMERATED {nr, eutra, ..., nr-unlicensed, e-utra-unlicensed}, pDUSessionTimedReportList VolumeTimedReportList, iE-Extensions ProtocolExtensionContainer { {PDUSessionUsageReport-ExtIEs} } OPTIONAL, ... @@ -2369,6 +3619,8 @@ PDUSessionUsageReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +Periodicity ::= INTEGER (0..640000, ...) + PeriodicRegistrationUpdateTimer ::= BIT STRING (SIZE(8)) PLMNIdentity ::= OCTET STRING (SIZE(3)) @@ -2383,6 +3635,18 @@ PLMNSupportItem ::= SEQUENCE { } PLMNSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional }| + { ID id-ExtendedSliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional }, + ... +} + +PNI-NPN-MobilityInformation ::= SEQUENCE { + allowed-PNI-NPI-List Allowed-PNI-NPN-List, + iE-Extensions ProtocolExtensionContainer { {PNI-NPN-MobilityInformation-ExtIEs} } OPTIONAL, + ... +} + +PNI-NPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } @@ -2435,6 +3699,7 @@ QosFlowAcceptedItem ::= SEQUENCE { } QosFlowAcceptedItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, ... } @@ -2449,6 +3714,8 @@ QosFlowAddOrModifyRequestItem ::= SEQUENCE { } QosFlowAddOrModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-TSCTrafficCharacteristics CRITICALITY ignore EXTENSION TSCTrafficCharacteristics PRESENCE optional }| + {ID id-RedundantQosFlowIndicator CRITICALITY ignore EXTENSION RedundantQosFlowIndicator PRESENCE optional }, ... } @@ -2461,6 +3728,7 @@ QosFlowAddOrModifyResponseItem ::= SEQUENCE { } QosFlowAddOrModifyResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, ... } @@ -2491,9 +3759,13 @@ QosFlowLevelQosParameters ::= SEQUENCE { } QosFlowLevelQosParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}, ... } + +QosMonitoringRequest ::= ENUMERATED {ul, dl, both, ...} + QosFlowListWithCause ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowWithCauseItem QosFlowWithCauseItem ::= SEQUENCE { @@ -2529,6 +3801,7 @@ QosFlowNotifyItem ::= SEQUENCE { } QosFlowNotifyItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetNotifyIndex PRESENCE optional }, ... } @@ -2566,6 +3839,8 @@ QosFlowSetupRequestItem ::= SEQUENCE { } QosFlowSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-TSCTrafficCharacteristics CRITICALITY ignore EXTENSION TSCTrafficCharacteristics PRESENCE optional }| + {ID id-RedundantQosFlowIndicator CRITICALITY ignore EXTENSION RedundantQosFlowIndicator PRESENCE optional }, ... } @@ -2579,18 +3854,7 @@ QosFlowItemWithDataForwarding ::= SEQUENCE { } QosFlowItemWithDataForwarding-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - ... -} - -QosFlowSetupResponseListSURes ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowSetupResponseItemSURes - -QosFlowSetupResponseItemSURes ::= SEQUENCE { - qosFlowIdentifier QosFlowIdentifier, - iE-Extensions ProtocolExtensionContainer { {QosFlowSetupResponseItemSURes-ExtIEs} } OPTIONAL, - ... -} - -QosFlowSetupResponseItemSURes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, ... } @@ -2610,7 +3874,7 @@ QoSFlowsUsageReportList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QoSFlowsUsage QoSFlowsUsageReport-Item ::= SEQUENCE { qosFlowIdentifier QosFlowIdentifier, - rATType ENUMERATED {nr, eutra, ...}, + rATType ENUMERATED {nr, eutra, ..., nr-unlicensed, e-utra-unlicensed}, qoSFlowsTimedReportList VolumeTimedReportList, iE-Extensions ProtocolExtensionContainer { {QoSFlowsUsageReport-Item-ExtIEs} } OPTIONAL, ... @@ -2622,6 +3886,8 @@ QoSFlowsUsageReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { -- R +Range ::= ENUMERATED {m50, m80, m180, m200, m350, m400, m500, m700, m1000, ...} + RANNodeName ::= PrintableString (SIZE(1..150, ...)) RANPagingPriority ::= INTEGER (1..256) @@ -2638,6 +3904,12 @@ RANStatusTransfer-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { RAN-UE-NGAP-ID ::= INTEGER (0..4294967295) +RAT-Information ::= ENUMERATED { + unlicensed, + nb-IoT, + ... +} + RATRestrictions ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF RATRestrictions-Item RATRestrictions-Item ::= SEQUENCE { @@ -2648,6 +3920,7 @@ RATRestrictions-Item ::= SEQUENCE { } RATRestrictions-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-ExtendedRATRestrictionInformation CRITICALITY ignore EXTENSION ExtendedRATRestrictionInformation PRESENCE optional }, ... } @@ -2704,13 +3977,23 @@ RedirectionVoiceFallback ::= ENUMERATED { ... } +RedundantPDUSessionInformation ::= SEQUENCE { + rSN RSN, + iE-Extensions ProtocolExtensionContainer { {RedundantPDUSessionInformation-ExtIEs} } OPTIONAL, + ... +} + +RedundantPDUSessionInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RedundantQosFlowIndicator ::= ENUMERATED {true, false} + ReflectiveQosAttribute ::= ENUMERATED { subject-to, ... } -ReferenceID ::= INTEGER (1..64, ...) - RelativeAMFCapacity ::= INTEGER (0..255) ReportArea ::= ENUMERATED { @@ -2725,6 +4008,14 @@ ResetAll ::= ENUMERATED { ... } +ReportAmountMDT ::= ENUMERATED { + r1, r2, r4, r8, r16, r32, r64, rinfinity +} + +ReportIntervalMDT ::= ENUMERATED { + ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60 +} + ResetType ::= CHOICE { nG-Interface ResetAll, partOfNG-Interface UE-associatedLogicalNG-connectionList, @@ -2735,6 +4026,10 @@ ResetType-ExtIEs NGAP-PROTOCOL-IES ::= { ... } +RGLevelWirelineAccessCharacteristics ::= OCTET STRING + +RNC-ID ::= INTEGER (0..4095) + RoutingID ::= OCTET STRING RRCContainer ::= OCTET STRING @@ -2751,7 +4046,8 @@ RRCEstablishmentCause ::= ENUMERATED { mps-PriorityAccess, mcs-PriorityAccess, ..., - notAvailable + notAvailable, + mo-ExceptionData } RRCInactiveTransitionReportRequest ::= ENUMERATED { @@ -2767,8 +4063,48 @@ RRCState ::= ENUMERATED { ... } +RSN ::= ENUMERATED {v1, v2, ...} + +RIMInformationTransfer ::= SEQUENCE { + targetRANNodeID TargetRANNodeID, + sourceRANNodeID SourceRANNodeID, + rIMInformation RIMInformation, + iE-Extensions ProtocolExtensionContainer { {RIMInformationTransfer-ExtIEs} } OPTIONAL, + ... +} + +RIMInformationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +RIMInformation ::= SEQUENCE { + targetgNBSetID GNBSetID, + rIM-RSDetection ENUMERATED {rs-detected, rs-disappeared, ...}, + iE-Extensions ProtocolExtensionContainer { {RIMInformation-ExtIEs} } OPTIONAL, + ... +} + +RIMInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GNBSetID ::= BIT STRING (SIZE(22)) + -- S +ScheduledCommunicationTime ::= SEQUENCE { + dayofWeek BIT STRING (SIZE(7)) OPTIONAL, + timeofDayStart INTEGER (0..86399, ...) OPTIONAL, + timeofDayEnd INTEGER (0..86399, ...) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { ScheduledCommunicationTime-ExtIEs}} OPTIONAL, + ... +} + +ScheduledCommunicationTime-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + SCTP-TLAs ::= SEQUENCE (SIZE(1..maxnoofXnTLAs)) OF TransportLayerAddress SD ::= OCTET STRING (SIZE(3)) @@ -2806,11 +4142,11 @@ SecurityContext-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { } SecurityIndication ::= SEQUENCE { - integrityProtectionIndication IntegrityProtectionIndication, - confidentialityProtectionIndication ConfidentialityProtectionIndication, - maximumIntegrityProtectedDataRate-UL MaximumIntegrityProtectedDataRate OPTIONAL, + integrityProtectionIndication IntegrityProtectionIndication, + confidentialityProtectionIndication ConfidentialityProtectionIndication, + maximumIntegrityProtectedDataRate-UL MaximumIntegrityProtectedDataRate OPTIONAL, -- The above IE shall be present if integrity protection is required or preferred - iE-Extensions ProtocolExtensionContainer { {SecurityIndication-ExtIEs} } OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SecurityIndication-ExtIEs} } OPTIONAL, ... } @@ -2832,6 +4168,28 @@ SecurityResult-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +SensorMeasurementConfiguration ::= SEQUENCE { + sensorMeasConfig SensorMeasConfig, + sensorMeasConfigName SensorMeasConfigName OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SensorMeasurementConfiguration-ExtIEs} } OPTIONAL, + ... +} + +SensorMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SensorMeasConfigName ::= SEQUENCE (SIZE(1..maxnoofSensorName)) OF SensorNameConfig + +SensorMeasConfig::= ENUMERATED {setup,...} + +SensorNameConfig ::= CHOICE { + uncompensattedBarometericConfig ENUMERATED {true, ...}, + ueSpeedConfig ENUMERATED {true, ...}, + ueOrientationConfig ENUMERATED {true, ...}, + ... +} + SerialNumber ::= BIT STRING (SIZE(16)) ServedGUAMIList ::= SEQUENCE (SIZE(1..maxnoofServedGUAMIs)) OF ServedGUAMIItem @@ -2844,6 +4202,7 @@ ServedGUAMIItem ::= SEQUENCE { } ServedGUAMIItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-GUAMIType CRITICALITY ignore EXTENSION GUAMIType PRESENCE optional }, ... } @@ -2861,6 +4220,7 @@ ServiceAreaInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +SgNB-UE-X2AP-ID ::= INTEGER (0..4294967295) SliceOverloadList ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SliceOverloadItem @@ -2886,6 +4246,16 @@ SliceSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +SNPN-MobilityInformation ::= SEQUENCE { + serving-NID NID, + iE-Extensions ProtocolExtensionContainer { {SNPN-MobilityInformation-ExtIEs} } OPTIONAL, + ... +} + +SNPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + S-NSSAI ::= SEQUENCE { sST SST, sD SD OPTIONAL, @@ -2918,6 +4288,7 @@ SONInformation ::= CHOICE { } SONInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-SONInformationReport CRITICALITY ignore TYPE SONInformationReport PRESENCE mandatory }, ... } @@ -2931,6 +4302,16 @@ SONInformationReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +SONInformationReport::= CHOICE { + failureIndicationInformation FailureIndication, + hOReportInformation HOReport, + choice-Extensions ProtocolIE-SingleContainer { { SONInformationReport-ExtIEs} } +} + +SONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + SONInformationRequest ::= ENUMERATED { xn-TNL-configuration-info, ... @@ -2948,6 +4329,8 @@ SourceNGRANNode-ToTargetNGRANNode-TransparentContainer ::= SEQUENCE { } SourceNGRANNode-ToTargetNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore EXTENSION SgNB-UE-X2AP-ID PRESENCE optional }| + { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore EXTENSION UEHistoryInformationFromTheUE PRESENCE optional }, ... } @@ -2973,9 +4356,9 @@ SourceToTarget-TransparentContainer ::= OCTET STRING -- The octets of the OCTET STRING are encoded according to the specifications of the target system. SourceToTarget-AMFInformationReroute ::= SEQUENCE { -configuredNSSAI ConfiguredNSSAI OPTIONAL, -rejectedNSSAIinPLMN RejectedNSSAIinPLMN OPTIONAL, -rejectedNSSAIinTA RejectedNSSAIinTA OPTIONAL, + configuredNSSAI ConfiguredNSSAI OPTIONAL, + rejectedNSSAIinPLMN RejectedNSSAIinPLMN OPTIONAL, + rejectedNSSAIinTA RejectedNSSAIinTA OPTIONAL, iE-Extensions ProtocolExtensionContainer { {SourceToTarget-AMFInformationReroute-ExtIEs} } OPTIONAL, ... } @@ -2987,6 +4370,11 @@ SourceToTarget-AMFInformationReroute-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { -- This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. -- The octets of the OCTET STRING are encoded according to the specifications of the Core network. +SRVCCOperationPossible ::= ENUMERATED { + possible, + notPossible, + ... +} ConfiguredNSSAI ::= OCTET STRING (SIZE(128)) @@ -3006,6 +4394,22 @@ SupportedTAItem ::= SEQUENCE { } SupportedTAItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-RAT-Information CRITICALITY reject EXTENSION RAT-Information PRESENCE optional }, + ... +} + +SuspendIndicator ::= ENUMERATED { + true, + ... +} + +Suspend-Request-Indication ::= ENUMERATED { + suspend-requested, + ... +} + +Suspend-Response-Indication ::= ENUMERATED { + suspend-indicated, ... } @@ -3116,12 +4520,13 @@ TargeteNB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { } TargetID ::= CHOICE { - targetRANNodeID TargetRANNodeID, - targeteNB-ID TargeteNB-ID, + targetRANNodeID TargetRANNodeID, + targeteNB-ID TargeteNB-ID, choice-Extensions ProtocolIE-SingleContainer { {TargetID-ExtIEs} } } TargetID-ExtIEs NGAP-PROTOCOL-IES ::= { + {ID id-TargetRNC-ID CRITICALITY reject TYPE TargetRNC-ID PRESENCE mandatory }, ... } @@ -3132,6 +4537,17 @@ TargetNGRANNode-ToSourceNGRANNode-TransparentContainer ::= SEQUENCE { } TargetNGRANNode-ToSourceNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-DAPSResponseInfoList CRITICALITY reject EXTENSION DAPSResponseInfoList PRESENCE optional }, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer ::= SEQUENCE { + cell-CAGInformation Cell-CAGInformation, + iE-Extensions ProtocolExtensionContainer { {TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } @@ -3146,10 +4562,26 @@ TargetRANNodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +TargetRNC-ID ::= SEQUENCE { + lAI LAI, + rNC-ID RNC-ID, + extendedRNC-ID ExtendedRNC-ID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TargetRNC-ID-ExtIEs} } OPTIONAL, + ... + } + +TargetRNC-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + TargetToSource-TransparentContainer ::= OCTET STRING -- This IE includes a transparent container from the target RAN node to the source RAN node. -- The octets of the OCTET STRING are encoded according to the specifications of the target system. +TargettoSource-Failure-TransparentContainer ::= OCTET STRING +-- This IE includes a transparent container from the target RAN node to the source RAN node. +-- The octets of the OCTET STRING are encoded according to the specifications of the target system (if applicable). + TimerApproachForGUAMIRemoval ::= ENUMERATED { apply-timer, ... @@ -3163,6 +4595,17 @@ TimeUEStayedInCell ::= INTEGER (0..4095) TimeUEStayedInCellEnhancedGranularity ::= INTEGER (0..40950) +TNAP-ID ::= OCTET STRING + +TNGF-ID ::= CHOICE { + tNGF-ID BIT STRING (SIZE(32, ...)), + choice-Extensions ProtocolIE-SingleContainer { {TNGF-ID-ExtIEs} } +} + +TNGF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + TNLAddressWeightFactor ::= INTEGER (0..255) TNLAssociationList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF TNLAssociationItem @@ -3185,6 +4628,17 @@ TNLAssociationUsage ::= ENUMERATED { ... } +TooearlyIntersystemHO::= SEQUENCE { + sourcecellID EUTRA-CGI, + failurecellID NGRAN-CGI, + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { TooearlyIntersystemHO-ExtIEs} } OPTIONAL +} + +TooearlyIntersystemHO-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + TraceActivation ::= SEQUENCE { nGRANTraceID NGRANTraceID, interfacesToTrace InterfacesToTrace, @@ -3195,6 +4649,9 @@ traceCollectionEntityIPAddress TransportLayerAddress, } TraceActivation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-MDTConfiguration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional }| + { ID id-TraceCollectionEntityURI CRITICALITY ignore EXTENSION URI-address PRESENCE optional }, + ... } @@ -3218,6 +4675,73 @@ TypeOfError ::= ENUMERATED { ... } +TAIBasedMDT ::= SEQUENCE { + tAIListforMDT TAIListforMDT, + iE-Extensions ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TAIBasedMDT-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI + + +TABasedMDT ::= SEQUENCE { + tAListforMDT TAListforMDT, + iE-Extensions ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TABasedMDT-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC + +Threshold-RSRP ::= INTEGER(0..127) + +Threshold-RSRQ ::= INTEGER(0..127) + +Threshold-SINR ::= INTEGER(0..127) + +TimeToTrigger ::= ENUMERATED {ms0, ms40, ms64, ms80, ms100, ms128, ms160, ms256, ms320, ms480, ms512, ms640, ms1024, ms1280, ms2560, ms5120} + + +TWAP-ID ::= OCTET STRING + +TWIF-ID ::= CHOICE { + tWIF-ID BIT STRING (SIZE(32, ...)), + choice-Extensions ProtocolIE-SingleContainer { {TWIF-ID-ExtIEs} } +} + +TWIF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +TSCAssistanceInformation ::= SEQUENCE { + periodicity Periodicity, + burstArrivalTime BurstArrivalTime OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TSCAssistanceInformation-ExtIEs} } OPTIONAL, + ... +} + +TSCAssistanceInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TSCTrafficCharacteristics ::= SEQUENCE { + tSCAssistanceInformationDL TSCAssistanceInformation OPTIONAL, + tSCAssistanceInformationUL TSCAssistanceInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TSCTrafficCharacteristics-ExtIEs} } OPTIONAL, + ... +} + +TSCTrafficCharacteristics-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- U UEAggregateMaximumBitRate ::= SEQUENCE { @@ -3243,10 +4767,70 @@ UE-associatedLogicalNG-connectionItem ::= SEQUENCE { UE-associatedLogicalNG-connectionItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ...} +UECapabilityInfoRequest ::= ENUMERATED { + requested, + ... +} + UEContextRequest ::= ENUMERATED {requested, ...} + +UEContextResumeRequestTransfer ::= SEQUENCE { + qosFlowFailedToResumeList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextResumeRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextResumeRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEContextResumeResponseTransfer ::= SEQUENCE { + qosFlowFailedToResumeList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextResumeResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextResumeResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEContextSuspendRequestTransfer ::= SEQUENCE { + suspendIndicator SuspendIndicator OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextSuspendRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextSuspendRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UE-DifferentiationInfo ::= SEQUENCE { + periodicCommunicationIndicator ENUMERATED {periodically, ondemand, ... } OPTIONAL, + periodicTime INTEGER (1..3600, ...) OPTIONAL, + scheduledCommunicationTime ScheduledCommunicationTime OPTIONAL, + stationaryIndication ENUMERATED {stationary, mobile, ...} OPTIONAL, + trafficProfile ENUMERATED {single-packet, dual-packets, multiple-packets, ...} OPTIONAL, + batteryIndication ENUMERATED {battery-powered, battery-powered-not-rechargeable-or-replaceable, not-battery-powered, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UE-DifferentiationInfo-ExtIEs} } OPTIONAL, + ... +} + +UE-DifferentiationInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + UEHistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCellItem +UEHistoryInformationFromTheUE ::= CHOICE { + nR NRMobilityHistoryReport, + choice-Extensions ProtocolIE-SingleContainer { {UEHistoryInformationFromTheUE-ExtIEs} } +} + +UEHistoryInformationFromTheUE-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + UEIdentityIndexValue ::= CHOICE { indexLength10 BIT STRING (SIZE(10)), choice-Extensions ProtocolIE-SingleContainer { {UEIdentityIndexValue-ExtIEs} } @@ -3304,31 +4888,45 @@ UEPresenceInAreaOfInterestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { UERadioCapability ::= OCTET STRING UERadioCapabilityForPaging ::= SEQUENCE { - uERadioCapabilityForPagingOfNR UERadioCapabilityForPagingOfNR OPTIONAL, - uERadioCapabilityForPagingOfEUTRA UERadioCapabilityForPagingOfEUTRA OPTIONAL, + uERadioCapabilityForPagingOfNR UERadioCapabilityForPagingOfNR OPTIONAL, + uERadioCapabilityForPagingOfEUTRA UERadioCapabilityForPagingOfEUTRA OPTIONAL, iE-Extensions ProtocolExtensionContainer { {UERadioCapabilityForPaging-ExtIEs} } OPTIONAL, ... } UERadioCapabilityForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-UERadioCapabilityForPagingOfNB-IoT CRITICALITY ignore EXTENSION UERadioCapabilityForPagingOfNB-IoT PRESENCE optional }, ... } +UERadioCapabilityForPagingOfNB-IoT ::= OCTET STRING + UERadioCapabilityForPagingOfNR ::= OCTET STRING UERadioCapabilityForPagingOfEUTRA ::= OCTET STRING +UERadioCapabilityID ::= OCTET STRING + UERetentionInformation ::= ENUMERATED { ues-retained, ... } +UERLFReportContainer ::= CHOICE { + nR NRUERLFReportContainer, + lTE LTEUERLFReportContainer, + choice-Extensions ProtocolIE-SingleContainer { {UERLFReportContainer-ExtIEs} } +} + +UERLFReportContainer-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + UESecurityCapabilities ::= SEQUENCE { nRencryptionAlgorithms NRencryptionAlgorithms, nRintegrityProtectionAlgorithms NRintegrityProtectionAlgorithms, eUTRAencryptionAlgorithms EUTRAencryptionAlgorithms, eUTRAintegrityProtectionAlgorithms EUTRAintegrityProtectionAlgorithms, - iE-Extensions ProtocolExtensionContainer { {UESecurityCapabilities-ExtIEs} } OPTIONAL, ... } @@ -3337,6 +4935,23 @@ UESecurityCapabilities-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +UE-UP-CIoT-Support ::= ENUMERATED {supported, ...} + +UL-CP-SecurityInformation ::= SEQUENCE { + ul-NAS-MAC UL-NAS-MAC, + ul-NAS-Count UL-NAS-Count, + iE-Extensions ProtocolExtensionContainer { { UL-CP-SecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +UL-CP-SecurityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UL-NAS-MAC ::= BIT STRING (SIZE (16)) + +UL-NAS-Count ::= BIT STRING (SIZE (5)) + UL-NGU-UP-TNLModifyList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivity)) OF UL-NGU-UP-TNLModifyItem UL-NGU-UP-TNLModifyItem ::= SEQUENCE { @@ -3347,6 +4962,8 @@ UL-NGU-UP-TNLModifyItem ::= SEQUENCE { } UL-NGU-UP-TNLModifyItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }, ... } @@ -3404,6 +5021,8 @@ UPTransportLayerInformationPairItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +URI-address ::= VisibleString + UserLocationInformation ::= CHOICE { userLocationInformationEUTRA UserLocationInformationEUTRA, userLocationInformationNR UserLocationInformationNR, @@ -3412,6 +5031,9 @@ UserLocationInformation ::= CHOICE { } UserLocationInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-UserLocationInformationTNGF CRITICALITY ignore TYPE UserLocationInformationTNGF PRESENCE mandatory }| + { ID id-UserLocationInformationTWIF CRITICALITY ignore TYPE UserLocationInformationTWIF PRESENCE mandatory }| + { ID id-UserLocationInformationW-AGF CRITICALITY ignore TYPE UserLocationInformationW-AGF PRESENCE mandatory }, ... } @@ -3439,6 +5061,40 @@ UserLocationInformationN3IWF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { ... } +UserLocationInformationTNGF ::= SEQUENCE { + tNAP-ID TNAP-ID, + iPAddress TransportLayerAddress, + portNumber PortNumber OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationTNGF-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationTNGF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UserLocationInformationTWIF ::= SEQUENCE { + tWAP-ID TWAP-ID, + iPAddress TransportLayerAddress, + portNumber PortNumber OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationTWIF-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationTWIF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UserLocationInformationW-AGF ::= CHOICE { + globalLine-ID GlobalLine-ID, + hFCNode-ID HFCNode-ID, + choice-Extensions ProtocolIE-SingleContainer { { UserLocationInformationW-AGF-ExtIEs} } +} + +UserLocationInformationW-AGF-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + UserLocationInformationNR ::= SEQUENCE { nR-CGI NR-CGI, tAI TAI, @@ -3448,7 +5104,8 @@ UserLocationInformationNR ::= SEQUENCE { } UserLocationInformationNR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { - { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional}, + { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional }| + { ID id-NID CRITICALITY reject EXTENSION NID PRESENCE optional }, ... } @@ -3482,6 +5139,15 @@ VolumeTimedReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { -- W +W-AGF-ID ::= CHOICE { + w-AGF-ID BIT STRING (SIZE(16)), + choice-Extensions ProtocolIE-SingleContainer { {W-AGF-ID-ExtIEs} } +} + +W-AGF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + WarningAreaCoordinates ::= OCTET STRING (SIZE(1..1024)) WarningAreaList ::= CHOICE { @@ -3502,14 +5168,43 @@ WarningSecurityInfo ::= OCTET STRING (SIZE(50)) WarningType ::= OCTET STRING (SIZE(2)) +WLANMeasurementConfiguration ::= SEQUENCE { + wlanMeasConfig WLANMeasConfig, + wlanMeasConfigNameList WLANMeasConfigNameList OPTIONAL, + wlan-rssi ENUMERATED {true, ...} OPTIONAL, + wlan-rtt ENUMERATED {true, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { WLANMeasurementConfiguration-ExtIEs } } OPTIONAL, + ... +} + +WLANMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +WLANMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofWLANName)) OF WLANName + +WLANMeasConfig::= ENUMERATED {setup,...} + +WLANName ::= OCTET STRING (SIZE (1..32)) + +WUS-Assistance-Information ::= SEQUENCE { + pagingProbabilityInformation PagingProbabilityInformation, + iE-Extensions ProtocolExtensionContainer { { WUS-Assistance-Information-ExtIEs } } OPTIONAL, + ... +} + +WUS-Assistance-Information-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + -- X XnExtTLAs ::= SEQUENCE (SIZE(1..maxnoofXnExtTLAs)) OF XnExtTLA-Item XnExtTLA-Item ::= SEQUENCE { - iPsecTLA TransportLayerAddress OPTIONAL, - gTP-TLAs XnGTP-TLAs OPTIONAL, - iE-Extensions ProtocolExtensionContainer { {XnExtTLA-Item-ExtIEs} } OPTIONAL, + iPsecTLA TransportLayerAddress OPTIONAL, + gTP-TLAs XnGTP-TLAs OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {XnExtTLA-Item-ExtIEs} } OPTIONAL, ... } diff --git a/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn b/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn index 81c372f9cf..95f78c34d9 100644 --- a/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn +++ b/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.4 PDU Definitions -- ************************************************************** -- @@ -6,11 +6,11 @@ -- -- ************************************************************** -NGAP-PDU-Contents { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +NGAP-PDU-Contents { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-PDU-Contents (1) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -31,52 +31,82 @@ IMPORTS AMF-TNLAssociationToUpdateList, AMF-UE-NGAP-ID, AssistanceDataForPaging, + AuthenticatedIndication, BroadcastCancelledAreaList, BroadcastCompletedAreaList, CancelAllWarningMessages, Cause, CellIDListForRestart, + CEmodeBrestricted, + CEmodeBSupport-Indicator, CNAssistedRANTuning, ConcurrentWarningMessageInd, CoreNetworkAssistanceInformationForInactive, CPTransportLayerInformation, CriticalityDiagnostics, DataCodingScheme, + DL-CP-SecurityInformation, DirectForwardingPathAvailability, + EarlyStatusTransfer-TransparentContainer, + EDT-Session, EmergencyAreaIDListForRestart, EmergencyFallbackIndicator, EN-DCSONConfigurationTransfer, + EndIndication, + Enhanced-CoverageRestriction, EUTRA-CGI, + Extended-ConnectedTime, FiveG-S-TMSI, GlobalRANNodeID, GUAMI, HandoverFlag, HandoverType, + IAB-Authorized, + IAB-Supported, + IABNodeIndication, IMSVoiceSupportIndicator, IndexToRFSP, InfoOnRecommendedCellsAndRANNodesForPaging, + IntersystemSONConfigurationTransfer, + LAI, + LTEM-Indication, LocationReportingRequestType, + LTEUESidelinkAggregateMaximumBitrate, + LTEV2XServicesAuthorized, MaskedIMEISV, MessageIdentifier, + MDTPLMNList, MobilityRestrictionList, NAS-PDU, NASSecurityParametersFromNGRAN, + NB-IoT-DefaultPagingDRX, + NB-IoT-PagingDRX, + NB-IoT-Paging-eDRXInfo, + NB-IoT-UEPriority, NewSecurityContextInd, NGRAN-CGI, NGRAN-TNLAssociationToRemoveList, NGRANTraceID, + NotifySourceNGRANNode, + NPN-AccessInformation, NR-CGI, NRPPa-PDU, NumberOfBroadcastsRequested, + NRUESidelinkAggregateMaximumBitrate, + NRV2XServicesAuthorized, OverloadResponse, OverloadStartNSSAIList, + PagingAssisDataforCEcapabUE, PagingDRX, PagingOrigin, PagingPriority, + PagingeDRXInformation, PDUSessionAggregateMaximumBitRate, PDUSessionResourceAdmittedList, PDUSessionResourceFailedToModifyListModCfm, PDUSessionResourceFailedToModifyListModRes, + PDUSessionResourceFailedToResumeListRESReq, + PDUSessionResourceFailedToResumeListRESRes, PDUSessionResourceFailedToSetupListCxtFail, PDUSessionResourceFailedToSetupListCxtRes, PDUSessionResourceFailedToSetupListHOAck, @@ -95,18 +125,24 @@ IMPORTS PDUSessionResourceReleasedListPSAck, PDUSessionResourceReleasedListPSFail, PDUSessionResourceReleasedListRelRes, + PDUSessionResourceResumeListRESReq, + PDUSessionResourceResumeListRESRes, PDUSessionResourceSecondaryRATUsageList, PDUSessionResourceSetupListCxtReq, PDUSessionResourceSetupListCxtRes, PDUSessionResourceSetupListHOReq, PDUSessionResourceSetupListSUReq, PDUSessionResourceSetupListSURes, + PDUSessionResourceSuspendListSUSReq, PDUSessionResourceSwitchedList, PDUSessionResourceToBeSwitchedDLList, PDUSessionResourceToReleaseListHOCmd, PDUSessionResourceToReleaseListRelCmd, + PLMNIdentity, PLMNSupportList, + PrivacyIndicator, PWSFailedCellIDList, + PC5QoSParameters, RANNodeName, RANPagingPriority, RANStatusTransfer-TransparentContainer, @@ -115,6 +151,7 @@ IMPORTS RelativeAMFCapacity, RepetitionPeriod, ResetType, + RGLevelWirelineAccessCharacteristics, RoutingID, RRCEstablishmentCause, RRCInactiveTransitionReportRequest, @@ -128,11 +165,16 @@ IMPORTS SONConfigurationTransfer, SourceToTarget-TransparentContainer, SourceToTarget-AMFInformationReroute, + SRVCCOperationPossible, SupportedTAList, + Suspend-Request-Indication, + Suspend-Response-Indication, + TAI, TAIListForPaging, TAIListForRestart, TargetID, TargetToSource-TransparentContainer, + TargettoSource-Failure-TransparentContainer, TimeToWait, TNLAssociationList, TraceActivation, @@ -140,21 +182,29 @@ IMPORTS TransportLayerAddress, UEAggregateMaximumBitRate, UE-associatedLogicalNG-connectionList, + UECapabilityInfoRequest, UEContextRequest, + UE-DifferentiationInfo, UE-NGAP-IDs, UEPagingIdentity, UEPresenceInAreaOfInterestList, UERadioCapability, UERadioCapabilityForPaging, + UERadioCapabilityID, UERetentionInformation, UESecurityCapabilities, + UE-UP-CIoT-Support, + UL-CP-SecurityInformation, UnavailableGUAMIList, + URI-address, UserLocationInformation, WarningAreaCoordinates, WarningAreaList, WarningMessageContents, WarningSecurityInfo, - WarningType + WarningType, + WUS-Assistance-Information, + RIMInformationTransfer FROM NGAP-IEs @@ -182,11 +232,14 @@ FROM NGAP-Containers id-AMFTrafficLoadReductionIndication, id-AMF-UE-NGAP-ID, id-AssistanceDataForPaging, + id-AuthenticatedIndication, id-BroadcastCancelledAreaList, id-BroadcastCompletedAreaList, id-CancelAllWarningMessages, id-Cause, id-CellIDListForRestart, + id-CEmodeBrestricted, + id-CEmodeBSupport-Indicator, id-CNAssistedRANTuning, id-ConcurrentWarningMessageInd, id-CoreNetworkAssistanceInformationForInactive, @@ -194,26 +247,45 @@ FROM NGAP-Containers id-DataCodingScheme, id-DefaultPagingDRX, id-DirectForwardingPathAvailability, + id-DL-CP-SecurityInformation, + id-EarlyStatusTransfer-TransparentContainer, + id-EDT-Session, id-EmergencyAreaIDListForRestart, id-EmergencyFallbackIndicator, id-ENDC-SONConfigurationTransferDL, id-ENDC-SONConfigurationTransferUL, + id-EndIndication, + id-Enhanced-CoverageRestriction, id-EUTRA-CGI, + id-Extended-ConnectedTime, id-FiveG-S-TMSI, id-GlobalRANNodeID, id-GUAMI, id-HandoverFlag, id-HandoverType, + id-IAB-Authorized, + id-IAB-Supported, + id-IABNodeIndication, id-IMSVoiceSupportIndicator, id-IndexToRFSP, id-InfoOnRecommendedCellsAndRANNodesForPaging, + id-IntersystemSONConfigurationTransferDL, + id-IntersystemSONConfigurationTransferUL, id-LocationReportingRequestType, + id-LTEM-Indication, + id-LTEV2XServicesAuthorized, + id-LTEUESidelinkAggregateMaximumBitrate, + id-ManagementBasedMDTPLMNList, id-MaskedIMEISV, id-MessageIdentifier, id-MobilityRestrictionList, id-NAS-PDU, id-NASC, id-NASSecurityParametersFromNGRAN, + id-NB-IoT-DefaultPagingDRX, + id-NB-IoT-PagingDRX, + id-NB-IoT-Paging-eDRXInfo, + id-NB-IoT-UEPriority, id-NewAMF-UE-NGAP-ID, id-NewGUAMI, id-NewSecurityContextInd, @@ -221,17 +293,25 @@ FROM NGAP-Containers id-NGRAN-CGI, id-NGRAN-TNLAssociationToRemoveList, id-NGRANTraceID, + id-NotifySourceNGRANNode, + id-NPN-AccessInformation, id-NR-CGI, id-NRPPa-PDU, + id-NRV2XServicesAuthorized, + id-NRUESidelinkAggregateMaximumBitrate, id-NumberOfBroadcastsRequested, id-OldAMF, id-OverloadStartNSSAIList, + id-PagingAssisDataforCEcapabUE, id-PagingDRX, + id-PagingeDRXInformation, id-PagingOrigin, id-PagingPriority, id-PDUSessionResourceAdmittedList, id-PDUSessionResourceFailedToModifyListModCfm, id-PDUSessionResourceFailedToModifyListModRes, + id-PDUSessionResourceFailedToResumeListRESReq, + id-PDUSessionResourceFailedToResumeListRESRes, id-PDUSessionResourceFailedToSetupListCxtFail, id-PDUSessionResourceFailedToSetupListCxtRes, id-PDUSessionResourceFailedToSetupListHOAck, @@ -250,65 +330,92 @@ FROM NGAP-Containers id-PDUSessionResourceReleasedListPSAck, id-PDUSessionResourceReleasedListPSFail, id-PDUSessionResourceReleasedListRelRes, + id-PDUSessionResourceResumeListRESReq, + id-PDUSessionResourceResumeListRESRes, id-PDUSessionResourceSecondaryRATUsageList, id-PDUSessionResourceSetupListCxtReq, id-PDUSessionResourceSetupListCxtRes, id-PDUSessionResourceSetupListHOReq, id-PDUSessionResourceSetupListSUReq, id-PDUSessionResourceSetupListSURes, + id-PDUSessionResourceSuspendListSUSReq, id-PDUSessionResourceSwitchedList, id-PDUSessionResourceToBeSwitchedDLList, id-PDUSessionResourceToReleaseListHOCmd, id-PDUSessionResourceToReleaseListRelCmd, id-PLMNSupportList, + id-PrivacyIndicator, id-PWSFailedCellIDList, + id-PC5QoSParameters, id-RANNodeName, id-RANPagingPriority, id-RANStatusTransfer-TransparentContainer, - id-RAN-UE-NGAP-ID, + id-RAN-UE-NGAP-ID, id-RedirectionVoiceFallback, id-RelativeAMFCapacity, id-RepetitionPeriod, id-ResetType, + id-RGLevelWirelineAccessCharacteristics, id-RoutingID, id-RRCEstablishmentCause, id-RRCInactiveTransitionReportRequest, + id-RRC-Resume-Cause, id-RRCState, + id-S-NSSAI, id-SecurityContext, id-SecurityKey, + id-SelectedPLMNIdentity, id-SerialNumber, id-ServedGUAMIList, id-SliceSupportList, + id-S-NSSAI, id-SONConfigurationTransferDL, id-SONConfigurationTransferUL, id-SourceAMF-UE-NGAP-ID, id-SourceToTarget-TransparentContainer, id-SourceToTarget-AMFInformationReroute, + id-SRVCCOperationPossible, id-SupportedTAList, + id-Suspend-Request-Indication, + id-Suspend-Response-Indication, + id-TAI, id-TAIListForPaging, id-TAIListForRestart, id-TargetID, id-TargetToSource-TransparentContainer, + id-TargettoSource-Failure-TransparentContainer, id-TimeToWait, + id-TNGFIdentityInformation, id-TraceActivation, id-TraceCollectionEntityIPAddress, + id-TraceCollectionEntityURI, + id-TWIFIdentityInformation, id-UEAggregateMaximumBitRate, id-UE-associatedLogicalNG-connectionList, + id-UECapabilityInfoRequest, id-UEContextRequest, + id-UE-DifferentiationInfo, id-UE-NGAP-IDs, id-UEPagingIdentity, id-UEPresenceInAreaOfInterestList, id-UERadioCapability, id-UERadioCapabilityForPaging, + id-UERadioCapabilityID, + id-UERadioCapability-EUTRA-Format, id-UERetentionInformation, id-UESecurityCapabilities, + id-UE-UP-CIoT-Support, + id-UL-CP-SecurityInformation, id-UnavailableGUAMIList, id-UserLocationInformation, + id-W-AGFIdentityInformation, id-WarningAreaCoordinates, id-WarningAreaList, id-WarningMessageContents, id-WarningSecurityInfo, - id-WarningType + id-WarningType, + id-WUS-Assistance-Information, + id-RIMInformationTransfer FROM NGAP-Constants; @@ -362,7 +469,7 @@ PDUSessionResourceSetupResponseIEs NGAP-PROTOCOL-IES ::= { { ID id-PDUSessionResourceSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceSetupListSURes PRESENCE optional }| { ID id-PDUSessionResourceFailedToSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListSURes PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, - ... + ... } @@ -506,7 +613,8 @@ PDUSessionResourceModifyIndication ::= SEQUENCE { PDUSessionResourceModifyIndicationIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-PDUSessionResourceModifyListModInd CRITICALITY reject TYPE PDUSessionResourceModifyListModInd PRESENCE mandatory }, + { ID id-PDUSessionResourceModifyListModInd CRITICALITY reject TYPE PDUSessionResourceModifyListModInd PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, ... } @@ -524,7 +632,7 @@ PDUSessionResourceModifyConfirm ::= SEQUENCE { PDUSessionResourceModifyConfirmIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-PDUSessionResourceModifyListModCfm CRITICALITY ignore TYPE PDUSessionResourceModifyListModCfm PRESENCE mandatory }| + { ID id-PDUSessionResourceModifyListModCfm CRITICALITY ignore TYPE PDUSessionResourceModifyListModCfm PRESENCE optional }| { ID id-PDUSessionResourceFailedToModifyListModCfm CRITICALITY ignore TYPE PDUSessionResourceFailedToModifyListModCfm PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... @@ -575,7 +683,22 @@ InitialContextSetupRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| { ID id-LocationReportingRequestType CRITICALITY ignore TYPE LocationReportingRequestType PRESENCE optional }| - { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }, + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| +{ ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| +{ ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| +{ ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| +{ ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -685,7 +808,141 @@ UEContextReleaseComplete-IEs NGAP-PROTOCOL-IES ::= { { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }| { ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }| { ID id-PDUSessionResourceListCxtRelCpl CRITICALITY reject TYPE PDUSessionResourceListCxtRelCpl PRESENCE optional }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE Context Resume Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT RESUME REQUEST +-- +-- ************************************************************** + +UEContextResumeRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextResumeRequestIEs} }, + ... +} + +UEContextResumeRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE mandatory }| + { ID id-PDUSessionResourceResumeListRESReq CRITICALITY reject TYPE PDUSessionResourceResumeListRESReq PRESENCE optional }| + { ID id-PDUSessionResourceFailedToResumeListRESReq CRITICALITY reject TYPE PDUSessionResourceFailedToResumeListRESReq PRESENCE optional }| + { ID id-Suspend-Request-Indication CRITICALITY ignore TYPE Suspend-Request-Indication PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT RESUME RESPONSE +-- +-- ************************************************************** + +UEContextResumeResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextResumeResponseIEs} }, + ... +} + +UEContextResumeResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceResumeListRESRes CRITICALITY reject TYPE PDUSessionResourceResumeListRESRes PRESENCE optional }| + { ID id-PDUSessionResourceFailedToResumeListRESRes CRITICALITY reject TYPE PDUSessionResourceFailedToResumeListRESRes PRESENCE optional }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional }| + { ID id-Suspend-Response-Indication CRITICALITY ignore TYPE Suspend-Response-Indication PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT RESUME FAILURE +-- +-- ************************************************************** + +UEContextResumeFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEContextResumeFailureIEs} }, + ... +} + +UEContextResumeFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- UE Context Suspend Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND REQUEST +-- +-- ************************************************************** + +UEContextSuspendRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextSuspendRequestIEs} }, + ... +} + +UEContextSuspendRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional }| + { ID id-PDUSessionResourceSuspendListSUSReq CRITICALITY reject TYPE PDUSessionResourceSuspendListSUSReq PRESENCE optional }, ... +} + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND RESPONSE +-- +-- ************************************************************** + +UEContextSuspendResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextSuspendResponseIEs} }, + ... +} + +UEContextSuspendResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND FAILURE +-- +-- ************************************************************** + +UEContextSuspendFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEContextSuspendFailureIEs} }, + ... +} + +UEContextSuspendFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -706,7 +963,7 @@ UEContextModificationRequest ::= SEQUENCE { ... } -UEContextModificationRequestIEs NGAP-PROTOCOL-IES ::= { +UEContextModificationRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| @@ -714,12 +971,20 @@ UEContextModificationRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-IndexToRFSP CRITICALITY ignore TYPE IndexToRFSP PRESENCE optional }| { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }| { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional }| - { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| { ID id-EmergencyFallbackIndicator CRITICALITY reject TYPE EmergencyFallbackIndicator PRESENCE optional }| { ID id-NewAMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE optional }| { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| { ID id-NewGUAMI CRITICALITY reject TYPE GUAMI PRESENCE optional }| - { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }, + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -734,7 +999,7 @@ UEContextModificationResponse ::= SEQUENCE { ... } -UEContextModificationResponseIEs NGAP-PROTOCOL-IES ::= { +UEContextModificationResponseIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-RRCState CRITICALITY ignore TYPE RRCState PRESENCE optional }| @@ -754,7 +1019,7 @@ UEContextModificationFailure ::= SEQUENCE { ... } -UEContextModificationFailureIEs NGAP-PROTOCOL-IES ::= { +UEContextModificationFailureIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| @@ -783,6 +1048,64 @@ RRCInactiveTransitionReportIEs NGAP-PROTOCOL-IES ::= { -- ************************************************************** -- +-- Retrieve UE Information +-- +-- ************************************************************** + +RetrieveUEInformation ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { RetrieveUEInformationIEs} }, + ... +} + +RetrieveUEInformationIEs NGAP-PROTOCOL-IES ::= { + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }, + ... + +} + +-- ************************************************************** + +-- UE Information Transfer +-- +-- ************************************************************** + +UEInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEInformationTransferIEs} }, + ... +} + +UEInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }| + { ID id-NB-IoT-UEPriority CRITICALITY ignore TYPE NB-IoT-UEPriority PRESENCE optional }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RAN CP Relocation Indication +-- +-- ************************************************************** + +RANCPRelocationIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { RANCPRelocationIndicationIEs} }, + ... +} + +RANCPRelocationIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }| + { ID id-EUTRA-CGI CRITICALITY ignore TYPE EUTRA-CGI PRESENCE mandatory }| + { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory }| + { ID id-UL-CP-SecurityInformation CRITICALITY reject TYPE UL-CP-SecurityInformation PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- -- UE MOBILITY MANAGEMENT ELEMENTARY PROCEDURES -- -- ************************************************************** @@ -804,7 +1127,7 @@ HandoverRequired ::= SEQUENCE { ... } -HandoverRequiredIEs NGAP-PROTOCOL-IES ::= { +HandoverRequiredIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| @@ -827,13 +1150,13 @@ HandoverCommand ::= SEQUENCE { ... } -HandoverCommandIEs NGAP-PROTOCOL-IES ::= { +HandoverCommandIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| { ID id-NASSecurityParametersFromNGRAN CRITICALITY reject TYPE NASSecurityParametersFromNGRAN PRESENCE conditional }| - -- This IE shall be present if HandoverType IE is set to value "5GStoEPPS" -- - { ID id-PDUSessionResourceHandoverList CRITICALITY ignore TYPE PDUSessionResourceHandoverList PRESENCE optional }| + -- This IE shall be present if HandoverType IE is set to value "5GStoEPPS" or “5GStoUTRAN” -- + { ID id-PDUSessionResourceHandoverList CRITICALITY ignore TYPE PDUSessionResourceHandoverList PRESENCE optional }| { ID id-PDUSessionResourceToReleaseListHOCmd CRITICALITY ignore TYPE PDUSessionResourceToReleaseListHOCmd PRESENCE optional }| { ID id-TargetToSource-TransparentContainer CRITICALITY reject TYPE TargetToSource-TransparentContainer PRESENCE mandatory }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, @@ -852,11 +1175,12 @@ HandoverPreparationFailure ::= SEQUENCE { ... } -HandoverPreparationFailureIEs NGAP-PROTOCOL-IES ::= { +HandoverPreparationFailureIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-TargettoSource-Failure-TransparentContainer CRITICALITY ignore TYPE TargettoSource-Failure-TransparentContainer PRESENCE optional }, ... } @@ -882,7 +1206,7 @@ HandoverRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| { ID id-UEAggregateMaximumBitRate CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE mandatory }| - { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }| { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory }| { ID id-NewSecurityContextInd CRITICALITY reject TYPE NewSecurityContextInd PRESENCE optional }| @@ -897,7 +1221,19 @@ HandoverRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory }| { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| - { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }, + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY reject TYPE IAB-Authorized PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -934,10 +1270,11 @@ HandoverFailure ::= SEQUENCE { ... } -HandoverFailureIEs NGAP-PROTOCOL-IES ::= { +HandoverFailureIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-TargettoSource-Failure-TransparentContainer CRITICALITY ignore TYPE TargettoSource-Failure-TransparentContainer PRESENCE optional }, ... } @@ -958,10 +1295,11 @@ HandoverNotify ::= SEQUENCE { ... } -HandoverNotifyIEs NGAP-PROTOCOL-IES ::= { +HandoverNotifyIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }, + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| + { ID id-NotifySourceNGRANNode CRITICALITY ignore TYPE NotifySourceNGRANNode PRESENCE optional }, ... } @@ -982,13 +1320,14 @@ PathSwitchRequest ::= SEQUENCE { ... } -PathSwitchRequestIEs NGAP-PROTOCOL-IES ::= { +PathSwitchRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-SourceAMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory }| { ID id-PDUSessionResourceToBeSwitchedDLList CRITICALITY reject TYPE PDUSessionResourceToBeSwitchedDLList PRESENCE mandatory }| - { ID id-PDUSessionResourceFailedToSetupListPSReq CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListPSReq PRESENCE optional }, + { ID id-PDUSessionResourceFailedToSetupListPSReq CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListPSReq PRESENCE optional }| + { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE optional }, ... } @@ -1004,7 +1343,7 @@ PathSwitchRequestAcknowledge ::= SEQUENCE { ... } -PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= { +PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional }| @@ -1013,11 +1352,23 @@ PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= { { ID id-PDUSessionResourceSwitchedList CRITICALITY ignore TYPE PDUSessionResourceSwitchedList PRESENCE mandatory }| { ID id-PDUSessionResourceReleasedListPSAck CRITICALITY ignore TYPE PDUSessionResourceReleasedListPSAck PRESENCE optional }| { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| - { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| - { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }, + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -1033,7 +1384,7 @@ PathSwitchRequestFailure ::= SEQUENCE { ... } -PathSwitchRequestFailureIEs NGAP-PROTOCOL-IES ::= { +PathSwitchRequestFailureIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-PDUSessionResourceReleasedListPSFail CRITICALITY ignore TYPE PDUSessionResourceReleasedListPSFail PRESENCE mandatory }| @@ -1058,7 +1409,7 @@ HandoverCancel ::= SEQUENCE { ... } -HandoverCancelIEs NGAP-PROTOCOL-IES ::= { +HandoverCancelIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, @@ -1076,15 +1427,87 @@ HandoverCancelAcknowledge ::= SEQUENCE { ... } -HandoverCancelAcknowledgeIEs NGAP-PROTOCOL-IES ::= { +HandoverCancelAcknowledgeIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- HANDOVER SUCCESS ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER SUCCESS +-- +-- ************************************************************** + +HandoverSuccess ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverSuccessIEs} }, + ... +} + +HandoverSuccessIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UPLINK RAN EARLY STATUS TRANSFER ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Uplink RAN Early Status Transfer +-- +-- ************************************************************** + +UplinkRANEarlyStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRANEarlyStatusTransferIEs} }, + ... +} + +UplinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}| + { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory}, ... } -- ************************************************************** -- +-- DOWNLINK RAN EARLY STATUS TRANSFER ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Downlink RAN Early Status Transfer +-- +-- ************************************************************** + +DownlinkRANEarlyStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRANEarlyStatusTransferIEs} }, + ... +} + +DownlinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}| + { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory}, + ... +} + + +-- ************************************************************** +-- -- Uplink RAN Status Transfer Elementary Procedure -- -- ************************************************************** @@ -1155,7 +1578,13 @@ PagingIEs NGAP-PROTOCOL-IES ::= { { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }| { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional }| - { ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional }, + { ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional }| + { ID id-NB-IoT-Paging-eDRXInfo CRITICALITY ignore TYPE NB-IoT-Paging-eDRXInfo PRESENCE optional }| + { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-WUS-Assistance-Information CRITICALITY ignore TYPE WUS-Assistance-Information PRESENCE optional }| + { ID id-PagingeDRXInformation CRITICALITY ignore TYPE PagingeDRXInformation PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }, ... } @@ -1185,7 +1614,14 @@ InitialUEMessage-IEs NGAP-PROTOCOL-IES ::= { { ID id-AMFSetID CRITICALITY ignore TYPE AMFSetID PRESENCE optional }| { ID id-UEContextRequest CRITICALITY ignore TYPE UEContextRequest PRESENCE optional }| { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| - { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }, + { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }| + { ID id-SelectedPLMNIdentity CRITICALITY ignore TYPE PLMNIdentity PRESENCE optional }| + { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional }| + { ID id-CEmodeBSupport-Indicator CRITICALITY reject TYPE CEmodeBSupport-Indicator PRESENCE optional }| + { ID id-LTEM-Indication CRITICALITY ignore TYPE LTEM-Indication PRESENCE optional }| + { ID id-EDT-Session CRITICALITY ignore TYPE EDT-Session PRESENCE optional }| + { ID id-AuthenticatedIndication CRITICALITY ignore TYPE AuthenticatedIndication PRESENCE optional }| + { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional }, ... } @@ -1209,7 +1645,16 @@ DownlinkNASTransport-IEs NGAP-PROTOCOL-IES ::= { { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| { ID id-IndexToRFSP CRITICALITY ignore TYPE IndexToRFSP PRESENCE optional }| { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }| - { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }, + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-UECapabilityInfoRequest CRITICALITY ignore TYPE UECapabilityInfoRequest PRESENCE optional }| + { ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -1224,11 +1669,23 @@ UplinkNASTransport ::= SEQUENCE { ... } +-- WS modification, add a definition for messages +W-AGFIdentityInformation ::= OCTET STRING +TNGFIdentityInformation ::= OCTET STRING +TWIFIdentityInformation ::= OCTET STRING + UplinkNASTransport-IEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory }| - { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }, + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| +-- WS modification, add a definition for messages +-- { ID id-W-AGFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }| + { ID id-W-AGFIdentityInformation CRITICALITY reject TYPE W-AGFIdentityInformation PRESENCE optional }| +-- { ID id-TNGFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }| + { ID id-TNGFIdentityInformation CRITICALITY reject TYPE TNGFIdentityInformation PRESENCE optional }| +-- { ID id-TWIFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }, + { ID id-TWIFIdentityInformation CRITICALITY reject TYPE TWIFIdentityInformation PRESENCE optional }, ... } @@ -1267,13 +1724,13 @@ NGAP-Message ::= OCTET STRING RerouteNASRequest-IEs NGAP-PROTOCOL-IES ::= { { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE optional }| + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE optional }| -- WS modification, add a definition for NGAP Message -- { ID id-NGAP-Message CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory }| { ID id-NGAP-Message CRITICALITY reject TYPE NGAP-Message PRESENCE mandatory }| { ID id-AMFSetID CRITICALITY reject TYPE AMFSetID PRESENCE mandatory }| - { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| - { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }, + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| + { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }, ... } @@ -1301,11 +1758,12 @@ NGSetupRequest ::= SEQUENCE { } NGSetupRequestIEs NGAP-PROTOCOL-IES ::= { - { ID id-GlobalRANNodeID CRITICALITY reject TYPE GlobalRANNodeID PRESENCE mandatory }| - { ID id-RANNodeName CRITICALITY ignore TYPE RANNodeName PRESENCE optional}| - { ID id-SupportedTAList CRITICALITY reject TYPE SupportedTAList PRESENCE mandatory }| - { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory }| - { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }, + { ID id-GlobalRANNodeID CRITICALITY reject TYPE GlobalRANNodeID PRESENCE mandatory }| + { ID id-RANNodeName CRITICALITY ignore TYPE RANNodeName PRESENCE optional }| + { ID id-SupportedTAList CRITICALITY reject TYPE SupportedTAList PRESENCE mandatory }| + { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory }| + { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }| + { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional }, ... } @@ -1325,8 +1783,9 @@ NGSetupResponseIEs NGAP-PROTOCOL-IES ::= { { ID id-ServedGUAMIList CRITICALITY reject TYPE ServedGUAMIList PRESENCE mandatory }| { ID id-RelativeAMFCapacity CRITICALITY ignore TYPE RelativeAMFCapacity PRESENCE mandatory }| { ID id-PLMNSupportList CRITICALITY reject TYPE PLMNSupportList PRESENCE mandatory }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| - { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }, + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }| + { ID id-IAB-Supported CRITICALITY ignore TYPE IAB-Supported PRESENCE optional }, ... } @@ -1356,7 +1815,7 @@ NGSetupFailureIEs NGAP-PROTOCOL-IES ::= { -- ************************************************************** -- --- RAN CONFIGURATION UPDATE +-- RAN CONFIGURATION UPDATE -- -- ************************************************************** @@ -1370,7 +1829,8 @@ RANConfigurationUpdateIEs NGAP-PROTOCOL-IES ::= { { ID id-SupportedTAList CRITICALITY reject TYPE SupportedTAList PRESENCE optional }| { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }| { ID id-GlobalRANNodeID CRITICALITY ignore TYPE GlobalRANNodeID PRESENCE optional }| - { ID id-NGRAN-TNLAssociationToRemoveList CRITICALITY reject TYPE NGRAN-TNLAssociationToRemoveList PRESENCE optional }, + { ID id-NGRAN-TNLAssociationToRemoveList CRITICALITY reject TYPE NGRAN-TNLAssociationToRemoveList PRESENCE optional }| + { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional }, ... } @@ -1416,7 +1876,7 @@ RANConfigurationUpdateFailureIEs NGAP-PROTOCOL-IES ::= { -- ************************************************************** -- --- AMF CONFIGURATION UPDATE +-- AMF CONFIGURATION UPDATE -- -- ************************************************************** @@ -1570,7 +2030,7 @@ OverloadStart ::= SEQUENCE { ... } -OverloadStartIEs NGAP-PROTOCOL-IES ::= { +OverloadStartIEs NGAP-PROTOCOL-IES ::= { { ID id-AMFOverloadResponse CRITICALITY reject TYPE OverloadResponse PRESENCE optional }| { ID id-AMFTrafficLoadReductionIndication CRITICALITY ignore TYPE TrafficLoadReductionIndication PRESENCE optional }| { ID id-OverloadStartNSSAIList CRITICALITY ignore TYPE OverloadStartNSSAIList PRESENCE optional }, @@ -1588,7 +2048,7 @@ OverloadStop ::= SEQUENCE { ... } -OverloadStopIEs NGAP-PROTOCOL-IES ::= { +OverloadStopIEs NGAP-PROTOCOL-IES ::= { ... } @@ -1610,8 +2070,9 @@ UplinkRANConfigurationTransfer ::= SEQUENCE { } UplinkRANConfigurationTransferIEs NGAP-PROTOCOL-IES ::= { - { ID id-SONConfigurationTransferUL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| - { ID id-ENDC-SONConfigurationTransferUL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }, + { ID id-SONConfigurationTransferUL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| + { ID id-ENDC-SONConfigurationTransferUL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }| + { ID id-IntersystemSONConfigurationTransferUL CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional }, ... } @@ -1627,14 +2088,15 @@ DownlinkRANConfigurationTransfer ::= SEQUENCE { } DownlinkRANConfigurationTransferIEs NGAP-PROTOCOL-IES ::= { - { ID id-SONConfigurationTransferDL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| - { ID id-ENDC-SONConfigurationTransferDL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }, + { ID id-SONConfigurationTransferDL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| + { ID id-ENDC-SONConfigurationTransferDL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }| + { ID id-IntersystemSONConfigurationTransferDL CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional }, ... } -- ************************************************************** -- --- WARNING MESSAGE TRANSMISSION ELEMENTARY PROCEDURES +-- WARNING MESSAGE TRANSMISSION ELEMENTARY PROCEDURES -- -- ************************************************************** @@ -1655,7 +2117,7 @@ WriteReplaceWarningRequest ::= SEQUENCE { ... } -WriteReplaceWarningRequestIEs NGAP-PROTOCOL-IES ::= { +WriteReplaceWarningRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| { ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }| @@ -1706,7 +2168,7 @@ PWSCancelRequest ::= SEQUENCE { ... } -PWSCancelRequestIEs NGAP-PROTOCOL-IES ::= { +PWSCancelRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| { ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }| @@ -1936,7 +2398,9 @@ CellTrafficTraceIEs NGAP-PROTOCOL-IES ::= { {ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| {ID id-NGRANTraceID CRITICALITY ignore TYPE NGRANTraceID PRESENCE mandatory }| {ID id-NGRAN-CGI CRITICALITY ignore TYPE NGRAN-CGI PRESENCE mandatory }| - {ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }, + {ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }| + {ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }| + {ID id-TraceCollectionEntityURI CRITICALITY ignore TYPE URI-address PRESENCE optional }, ... } @@ -2046,7 +2510,8 @@ UERadioCapabilityInfoIndicationIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE mandatory }| - { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }, + { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| + { ID id-UERadioCapability-EUTRA-Format CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }, ... } @@ -2067,10 +2532,11 @@ UERadioCapabilityCheckRequest ::= SEQUENCE { ... } -UERadioCapabilityCheckRequestIEs NGAP-PROTOCOL-IES ::= { +UERadioCapabilityCheckRequestIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| - { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }, + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, ... } @@ -2085,7 +2551,7 @@ UERadioCapabilityCheckResponse ::= SEQUENCE { ... } -UERadioCapabilityCheckResponseIEs NGAP-PROTOCOL-IES ::= { +UERadioCapabilityCheckResponseIEs NGAP-PROTOCOL-IES ::= { { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-IMSVoiceSupportIndicator CRITICALITY reject TYPE IMSVoiceSupportIndicator PRESENCE mandatory }| @@ -2137,9 +2603,130 @@ SecondaryRATDataUsageReportIEs NGAP-PROTOCOL-IES ::= { { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| { ID id-PDUSessionResourceSecondaryRATUsageList CRITICALITY ignore TYPE PDUSessionResourceSecondaryRATUsageList PRESENCE mandatory }| { ID id-HandoverFlag CRITICALITY ignore TYPE HandoverFlag PRESENCE optional }| - { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RIM INFORMATION TRANSFER ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UPLINK RIM INFORMATION TRANSFER +-- +-- ************************************************************** + +UplinkRIMInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRIMInformationTransferIEs} }, + ... +} + +UplinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional }, + ... +} +-- ************************************************************** +-- +-- DOWNLINK RIM INFORMATION TRANSFER +-- +-- ************************************************************** + +DownlinkRIMInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRIMInformationTransferIEs} }, + ... +} + +DownlinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional }, + + ... +} + +-- ************************************************************** +-- +-- Connection Establishment Indication +-- +-- ************************************************************** + +ConnectionEstablishmentIndication::= SEQUENCE { + protocolIEs ProtocolIE-Container { {ConnectionEstablishmentIndicationIEs} }, + ... +} + +ConnectionEstablishmentIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-DL-CP-SecurityInformation CRITICALITY ignore TYPE DL-CP-SecurityInformation PRESENCE optional }| + { ID id-NB-IoT-UEPriority CRITICALITY ignore TYPE NB-IoT-UEPriority PRESENCE optional }, ... } +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING REQUEST +-- +-- ************************************************************** + +UERadioCapabilityIDMappingRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityIDMappingRequestIEs} }, + ... +} + +UERadioCapabilityIDMappingRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING RESPONSE +-- +-- ************************************************************** + +UERadioCapabilityIDMappingResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityIDMappingResponseIEs} }, + ... +} + +UERadioCapabilityIDMappingResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- AMF CP Relocation Indication +-- +-- ************************************************************** + +AMFCPRelocationIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { AMFCPRelocationIndicationIEs} }, + ... +} + +AMFCPRelocationIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }, + ... +} + END diff --git a/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn b/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn index 449baf9f45..41c1e28941 100644 --- a/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn +++ b/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.413 V15.6.0 (2019-12) +-- 3GPP TS 38.413 V16.2.0 (2020-07) -- 9.4.3 Elementary Procedure Definitions -- ************************************************************** -- @@ -29,12 +29,15 @@ FROM NGAP-CommonDataTypes AMFConfigurationUpdate, AMFConfigurationUpdateAcknowledge, AMFConfigurationUpdateFailure, + AMFCPRelocationIndication, AMFStatusIndication, CellTrafficTrace, + ConnectionEstablishmentIndication, DeactivateTrace, DownlinkNASTransport, DownlinkNonUEAssociatedNRPPaTransport, DownlinkRANConfigurationTransfer, + DownlinkRANEarlyStatusTransfer, DownlinkRANStatusTransfer, DownlinkUEAssociatedNRPPaTransport, ErrorIndication, @@ -47,6 +50,7 @@ FROM NGAP-CommonDataTypes HandoverRequest, HandoverRequestAcknowledge, HandoverRequired, + HandoverSuccess, InitialContextSetupFailure, InitialContextSetupRequest, InitialContextSetupResponse, @@ -83,7 +87,9 @@ FROM NGAP-CommonDataTypes RANConfigurationUpdate, RANConfigurationUpdateAcknowledge, RANConfigurationUpdateFailure, + RANCPRelocationIndication, RerouteNASRequest, + RetrieveUEInformation, RRCInactiveTransitionReport, SecondaryRATDataUsageReport, TraceFailureIndication, @@ -94,26 +100,42 @@ FROM NGAP-CommonDataTypes UEContextReleaseCommand, UEContextReleaseComplete, UEContextReleaseRequest, + UEContextResumeRequest, + UEContextResumeResponse, + UEContextResumeFailure, + UEContextSuspendRequest, + UEContextSuspendResponse, + UEContextSuspendFailure, + UEInformationTransfer, UERadioCapabilityCheckRequest, UERadioCapabilityCheckResponse, + UERadioCapabilityIDMappingRequest, + UERadioCapabilityIDMappingResponse, UERadioCapabilityInfoIndication, UETNLABindingReleaseRequest, UplinkNASTransport, UplinkNonUEAssociatedNRPPaTransport, UplinkRANConfigurationTransfer, + UplinkRANEarlyStatusTransfer, UplinkRANStatusTransfer, UplinkUEAssociatedNRPPaTransport, WriteReplaceWarningRequest, - WriteReplaceWarningResponse + WriteReplaceWarningResponse, + UplinkRIMInformationTransfer, + DownlinkRIMInformationTransfer + FROM NGAP-PDU-Contents id-AMFConfigurationUpdate, + id-AMFCPRelocationIndication, id-AMFStatusIndication, id-CellTrafficTrace, + id-ConnectionEstablishmentIndication, id-DeactivateTrace, id-DownlinkNASTransport, id-DownlinkNonUEAssociatedNRPPaTransport, id-DownlinkRANConfigurationTransfer, + id-DownlinkRANEarlyStatusTransfer, id-DownlinkRANStatusTransfer, id-DownlinkUEAssociatedNRPPaTransport, id-ErrorIndication, @@ -121,6 +143,7 @@ FROM NGAP-PDU-Contents id-HandoverNotification, id-HandoverPreparation, id-HandoverResourceAllocation, + id-HandoverSuccess, id-InitialContextSetup, id-InitialUEMessage, id-LocationReport, @@ -143,7 +166,9 @@ FROM NGAP-PDU-Contents id-PWSFailureIndication, id-PWSRestartIndication, id-RANConfigurationUpdate, + id-RANCPRelocationIndication, id-RerouteNASRequest, + id-RetrieveUEInformation, id-RRCInactiveTransitionReport, id-SecondaryRATDataUsageReport, id-TraceFailureIndication, @@ -151,15 +176,23 @@ FROM NGAP-PDU-Contents id-UEContextModification, id-UEContextRelease, id-UEContextReleaseRequest, + id-UEContextResume, + id-UEContextSuspend, + id-UEInformationTransfer, id-UERadioCapabilityCheck, + id-UERadioCapabilityIDMapping, id-UERadioCapabilityInfoIndication, id-UETNLABindingRelease, id-UplinkNASTransport, id-UplinkNonUEAssociatedNRPPaTransport, id-UplinkRANConfigurationTransfer, + id-UplinkRANEarlyStatusTransfer, id-UplinkRANStatusTransfer, id-UplinkUEAssociatedNRPPaTransport, - id-WriteReplaceWarning + id-WriteReplaceWarning, + id-UplinkRIMInformationTransfer, + id-DownlinkRIMInformationTransfer + FROM NGAP-Constants; -- ************************************************************** @@ -244,21 +277,28 @@ NGAP-ELEMENTARY-PROCEDURES-CLASS-1 NGAP-ELEMENTARY-PROCEDURE ::= { rANConfigurationUpdate | uEContextModification | uEContextRelease | + uEContextResume | + uEContextSuspend | uERadioCapabilityCheck | + uERadioCapabilityIDMapping | writeReplaceWarning } NGAP-ELEMENTARY-PROCEDURES-CLASS-2 NGAP-ELEMENTARY-PROCEDURE ::= { + aMFCPRelocationIndication | aMFStatusIndication | cellTrafficTrace | + connectionEstablishmentIndication | deactivateTrace | downlinkNASTransport | downlinkNonUEAssociatedNRPPaTransport | downlinkRANConfigurationTransfer | + downlinkRANEarlyStatusTransfer | downlinkRANStatusTransfer | downlinkUEAssociatedNRPPaTransport | errorIndication | handoverNotification | + handoverSuccess | initialUEMessage | locationReport | locationReportingControl | @@ -271,19 +311,25 @@ NGAP-ELEMENTARY-PROCEDURES-CLASS-2 NGAP-ELEMENTARY-PROCEDURE ::= { privateMessage | pWSFailureIndication | pWSRestartIndication | + rANCPRelocationIndication | rerouteNASRequest | + retrieveUEInformation | rRCInactiveTransitionReport | secondaryRATDataUsageReport | traceFailureIndication | traceStart | uEContextReleaseRequest | + uEInformationTransfer | uERadioCapabilityInfoIndication | uETNLABindingRelease | uplinkNASTransport | uplinkNonUEAssociatedNRPPaTransport | uplinkRANConfigurationTransfer | + uplinkRANEarlyStatusTransfer | uplinkRANStatusTransfer | - uplinkUEAssociatedNRPPaTransport + uplinkUEAssociatedNRPPaTransport | + uplinkRIMInformationTransfer | + downlinkRIMInformationTransfer } -- ************************************************************** @@ -300,6 +346,12 @@ aMFConfigurationUpdate NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY reject } +aMFCPRelocationIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE AMFCPRelocationIndication + PROCEDURE CODE id-AMFCPRelocationIndication + CRITICALITY reject +} + aMFStatusIndication NGAP-ELEMENTARY-PROCEDURE ::={ INITIATING MESSAGE AMFStatusIndication PROCEDURE CODE id-AMFStatusIndication @@ -312,6 +364,12 @@ cellTrafficTrace NGAP-ELEMENTARY-PROCEDURE ::={ CRITICALITY ignore } +connectionEstablishmentIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ConnectionEstablishmentIndication + PROCEDURE CODE id-ConnectionEstablishmentIndication + CRITICALITY reject +} + deactivateTrace NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE DeactivateTrace PROCEDURE CODE id-DeactivateTrace @@ -336,6 +394,12 @@ downlinkRANConfigurationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY ignore } +downlinkRANEarlyStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRANEarlyStatusTransfer + PROCEDURE CODE id-DownlinkRANEarlyStatusTransfer + CRITICALITY ignore +} + downlinkRANStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE DownlinkRANStatusTransfer PROCEDURE CODE id-DownlinkRANStatusTransfer @@ -383,6 +447,12 @@ handoverResourceAllocation NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY reject } +handoverSuccess NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverSuccess + PROCEDURE CODE id-HandoverSuccess + CRITICALITY ignore +} + initialContextSetup NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE InitialContextSetupRequest SUCCESSFUL OUTCOME InitialContextSetupResponse @@ -529,12 +599,25 @@ rANConfigurationUpdate NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY reject } +rANCPRelocationIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RANCPRelocationIndication + PROCEDURE CODE id-RANCPRelocationIndication + CRITICALITY reject +} + rerouteNASRequest NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE RerouteNASRequest PROCEDURE CODE id-RerouteNASRequest CRITICALITY reject } + +retrieveUEInformation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RetrieveUEInformation + PROCEDURE CODE id-RetrieveUEInformation + CRITICALITY reject +} + rRCInactiveTransitionReport NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE RRCInactiveTransitionReport PROCEDURE CODE id-RRCInactiveTransitionReport @@ -580,6 +663,28 @@ uEContextReleaseRequest NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY ignore } +uEContextResume NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextResumeRequest + SUCCESSFUL OUTCOME UEContextResumeResponse + UNSUCCESSFUL OUTCOME UEContextResumeFailure + PROCEDURE CODE id-UEContextResume + CRITICALITY reject +} + +uEContextSuspend NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextSuspendRequest + SUCCESSFUL OUTCOME UEContextSuspendResponse + UNSUCCESSFUL OUTCOME UEContextSuspendFailure + PROCEDURE CODE id-UEContextSuspend + CRITICALITY reject +} + +uEInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEInformationTransfer + PROCEDURE CODE id-UEInformationTransfer + CRITICALITY reject +} + uERadioCapabilityCheck NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE UERadioCapabilityCheckRequest SUCCESSFUL OUTCOME UERadioCapabilityCheckResponse @@ -587,6 +692,13 @@ uERadioCapabilityCheck NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY reject } +uERadioCapabilityIDMapping NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UERadioCapabilityIDMappingRequest + SUCCESSFUL OUTCOME UERadioCapabilityIDMappingResponse + PROCEDURE CODE id-UERadioCapabilityIDMapping + CRITICALITY reject +} + uERadioCapabilityInfoIndication NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE UERadioCapabilityInfoIndication PROCEDURE CODE id-UERadioCapabilityInfoIndication @@ -617,6 +729,12 @@ uplinkRANConfigurationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY ignore } +uplinkRANEarlyStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRANEarlyStatusTransfer + PROCEDURE CODE id-UplinkRANEarlyStatusTransfer + CRITICALITY reject +} + uplinkRANStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE UplinkRANStatusTransfer PROCEDURE CODE id-UplinkRANStatusTransfer @@ -636,4 +754,16 @@ writeReplaceWarning NGAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY reject } +uplinkRIMInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRIMInformationTransfer + PROCEDURE CODE id-UplinkRIMInformationTransfer + CRITICALITY ignore +} + +downlinkRIMInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRIMInformationTransfer + PROCEDURE CODE id-DownlinkRIMInformationTransfer + CRITICALITY ignore +} + END diff --git a/epan/dissectors/asn1/ngap/ngap.cnf b/epan/dissectors/asn1/ngap/ngap.cnf index 1b0d43ccc2..d5ae9bce1e 100644 --- a/epan/dissectors/asn1/ngap/ngap.cnf +++ b/epan/dissectors/asn1/ngap/ngap.cnf @@ -15,8 +15,10 @@ ProtocolIE-ID #.EXPORTS LastVisitedNGRANCellInformation_PDU +MDT-Configuration_PDU MobilityRestrictionList_PDU NGRAN-CGI_PDU +SONConfigurationTransfer_PDU SourceNGRANNode-ToTargetNGRANNode-TransparentContainer_PDU TargetNGRANNode-ToSourceNGRANNode-TransparentContainer_PDU @@ -26,6 +28,7 @@ HandoverPreparationUnsuccessfulTransfer HandoverRequestAcknowledgeTransfer HandoverResourceAllocationUnsuccessfulTransfer LastVisitedNGRANCellInformation +MDT-Configuration MobilityRestrictionList NGAP-PDU NGRAN-CGI @@ -36,7 +39,9 @@ PDUSessionResourceReleaseCommandTransfer PDUSessionResourceSetupRequestTransfer PDUSessionResourceSetupResponseTransfer PDUSessionResourceSetupUnsuccessfulTransfer +SONConfigurationTransfer SourceNGRANNode-ToTargetNGRANNode-TransparentContainer +TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer TargetNGRANNode-ToSourceNGRANNode-TransparentContainer #.MAKE_ENUM @@ -44,19 +49,18 @@ GlobalRANNodeID HandoverType ProcedureCode ProtocolIE-ID +RAT-Information #.NO_EMIT #.OMIT_ASSIGNMENT # Get rid of unused code warnings +AlternativeQoSParaSetNotifyIndex ProtocolIE-FieldPair ProtocolIE-ContainerList ProtocolIE-ContainerPair ProtocolIE-ContainerPairList Presence -ReferenceID -QosFlowSetupResponseListSURes -QosFlowSetupResponseItemSURes #.END @@ -201,7 +205,11 @@ ProtocolIE-Field/value ie_field_value # %(DEFAULT_BODY)s # } - +#.FN_BODY RAN-UE-NGAP-ID VAL_PTR = &ran_ue_ngap_id + guint32 ran_ue_ngap_id; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); +%(DEFAULT_BODY)s + ngap_data->ran_ue_ngap_id = ran_ue_ngap_id; #.FN_BODY NAS-PDU VAL_PTR = ¶meter_tvb @@ -273,6 +281,9 @@ ProtocolIE-Field/value ie_field_value case fivegs_to_eps: dissect_s1ap_SourceeNB_ToTargeteNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); break; + case fivegs_to_utran: + dissect_rrc_ToTargetRNC_Container_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; default: break; } @@ -299,6 +310,9 @@ ProtocolIE-Field/value ie_field_value case fivegs_to_eps: dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); break; + case fivegs_to_utran: + dissect_rrc_TargetRNC_ToSourceRNC_Container_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; default: break; } @@ -313,6 +327,27 @@ ProtocolIE-Field/value ie_field_value col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE); } +#.FN_BODY TargettoSource-Failure-TransparentContainer VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb; + proto_tree *subtree; +%(DEFAULT_BODY)s + if (ngap_dissect_container && parameter_tvb && + tvb_reported_length(parameter_tvb) > 0) { + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + /* Don't want elements inside container to write to info column */ + col_set_writable(actx->pinfo->cinfo, COL_INFO, FALSE); + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_TargettoSource_Failure_TransparentContainer); + switch(ngap_data->handover_type_value) { + case intra5gs: + dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; + default: + break; + } + /* Enable writing of the column again */ + col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE); + } + #.TYPE_ATTR ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = &ngap_ProtocolIE_ID_vals_ext @@ -352,26 +387,90 @@ EPS-TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN); } +#.FN_BODY TAI + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + + ngap_data->tai = wmem_new0(wmem_packet_scope(), struct ngap_tai); +%(DEFAULT_BODY)s + if (!PINFO_FD_VISITED(actx->pinfo) && ngap_data->ngap_conv && + (ngap_data->message_type == INITIATING_MESSAGE) && + (ngap_data->procedure_code == id_InitialUEMessage)) { + guint64 key = (ngap_data->tai->plmn << 24) | ngap_data->tai->tac; + + if (wmem_map_lookup(ngap_data->ngap_conv->nbiot_ta, &key)) { + wmem_tree_key_t tree_key[3]; + guint32 *id = wmem_new(wmem_file_scope(), guint32); + + *id = ngap_data->ran_ue_ngap_id; + tree_key[0].length = 1; + tree_key[0].key = id; + tree_key[1].length = 1; + tree_key[1].key = &actx->pinfo->num; + tree_key[2].length = 0; + tree_key[2].key = NULL; + wmem_tree_insert32_array(ngap_data->ngap_conv->nbiot_ran_ue_ngap_id, tree_key, id); + } + } + #.TYPE_ATTR TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX #.FN_BODY TAC VAL_PTR = ¶meter_tvb HF_INDEX = -1 tvbuff_t *parameter_tvb = NULL; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); %(DEFAULT_BODY)s if (parameter_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 3, ENC_BIG_ENDIAN); + if (ngap_data->supported_ta) { + ngap_data->supported_ta->tac = tvb_get_ntoh24(parameter_tvb, 0); + } else if (ngap_data->tai) { + ngap_data->tai->tac = tvb_get_ntoh24(parameter_tvb, 0); + } } #.FN_BODY PLMNIdentity VAL_PTR = ¶meter_tvb tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; - + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); %(DEFAULT_BODY)s + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_PLMNIdentity); + dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE); + if (ngap_data->supported_ta) { + guint32 plmn = tvb_get_ntoh24(parameter_tvb, 0); + wmem_array_append_one(ngap_data->supported_ta->plmn, plmn); + } else if (ngap_data->tai) { + ngap_data->tai->plmn = tvb_get_ntoh24(parameter_tvb, 0); + } + } - if (!parameter_tvb) - return offset; +#.FN_HDR SupportedTAItem + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); - subtree = proto_item_add_subtree(actx->created_item, ett_ngap_PLMNIdentity); - dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE); + if (!PINFO_FD_VISITED(actx->pinfo) && + (ngap_data->message_type == INITIATING_MESSAGE) && + ((ngap_data->procedure_code == id_NGSetup) || + (ngap_data->procedure_code == id_RANConfigurationUpdate))) { + ngap_data->supported_ta = wmem_new0(wmem_packet_scope(), struct ngap_supported_ta); + ngap_data->supported_ta->plmn = wmem_array_new(wmem_packet_scope(), sizeof(guint32)); + } + +#.FN_FTR SupportedTAItem + ngap_data->supported_ta = NULL; + +#.FN_BODY RAT-Information VAL_PTR = &rat_info + guint32 rat_info = 0xffffffff; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); +%(DEFAULT_BODY)s + if (ngap_data->ngap_conv && ngap_data->supported_ta && (rat_info == nb_IoT)) { + guint64 *key; + guint i; + + for (i = 0; i < wmem_array_get_count(ngap_data->supported_ta->plmn); i++) { + key = wmem_new(wmem_file_scope(), guint64); + *key = ((*(guint32*)wmem_array_index(ngap_data->supported_ta->plmn, i)) << 24) | ngap_data->supported_ta->tac; + wmem_map_insert(ngap_data->ngap_conv->nbiot_ta, key, GUINT_TO_POINTER(1)); + } + } #.FN_BODY TransportLayerAddress VAL_PTR = ¶meter_tvb LEN_PTR = &len tvbuff_t *parameter_tvb = NULL; @@ -541,6 +640,17 @@ PortNumber TYPE = FT_UINT16 DISPLAY = BASE_DEC } } +#.FN_BODY UERadioCapabilityForPagingOfNB-IoT VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb && lte_rrc_ue_radio_paging_info_nb_handle) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapabilityForPagingOfNB_IoT); + call_dissector(lte_rrc_ue_radio_paging_info_nb_handle, parameter_tvb, actx->pinfo, subtree); + } + #.FN_BODY UERadioCapabilityForPagingOfNR VAL_PTR = ¶meter_tvb tvbuff_t *parameter_tvb = NULL; @@ -568,13 +678,23 @@ RecommendedCellItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=& #.FN_BODY UERadioCapability VAL_PTR = ¶meter_tvb tvbuff_t *parameter_tvb = NULL; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); %(DEFAULT_BODY)s - if (parameter_tvb && nr_rrc_ue_radio_access_cap_info_handle) { - proto_tree *subtree; + if (parameter_tvb) { + if (ngap_data->procedure_code == id_UERadioCapability_EUTRA_Format) { + if (lte_rrc_ue_radio_access_cap_info_handle) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); + call_dissector(lte_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + } + } else if (nr_rrc_ue_radio_access_cap_info_handle) { + proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); - call_dissector(nr_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); + call_dissector(nr_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + } } #.FN_BODY TimeStamp VAL_PTR = ×tamp_tvb @@ -593,6 +713,7 @@ RecommendedCellItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=& static int * const fields[] = { &hf_ngap_RATRestrictionInformation_e_UTRA, &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, &hf_ngap_RATRestrictionInformation_reserved, NULL }; @@ -769,6 +890,177 @@ VolumeTimedReport-Item/usageCountUL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u #.TYPE_ATTR VolumeTimedReport-Item/usageCountDL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_octet_octets +#.TYPE_ATTR +BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE +#.FN_BODY BluetoothName VAL_PTR = ¶meter_tvb HF_INDEX = -1 + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA); +#.END + +#.FN_BODY BurstArrivalTime VAL_PTR = &burst_arrival_time_tvb + tvbuff_t *burst_arrival_time_tvb = NULL; +%(DEFAULT_BODY)s + if (burst_arrival_time_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_BurstArrivalTime); + dissect_nr_rrc_ReferenceTime_r16_PDU(burst_arrival_time_tvb, actx->pinfo, subtree, NULL); + } + +#.FN_BODY CoverageEnhancementLevel VAL_PTR = &cov_enh_level_tvb + tvbuff_t *cov_enh_level_tvb; + proto_tree *subtree; +%(DEFAULT_BODY)s + if (cov_enh_level_tvb && ngap_dissect_container) { + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_CoverageEnhancementLevel); + if ((ngap_is_nbiot_ue(actx->pinfo) && (ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_AUTOMATIC)) || + (ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_NBIOT)) { + TRY { + dissect_lte_rrc_UEPagingCoverageInformation_NB_PDU(cov_enh_level_tvb, actx->pinfo, subtree, NULL); + } + CATCH_BOUNDS_ERRORS { + show_exception(cov_enh_level_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE); + } + ENDTRY; + } else { + TRY { + dissect_lte_rrc_UEPagingCoverageInformation_PDU(cov_enh_level_tvb, actx->pinfo, subtree, NULL); + } + CATCH_BOUNDS_ERRORS { + show_exception(cov_enh_level_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE); + } + ENDTRY; + } + } + +#.TYPE_ATTR +Extended-ConnectedTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds + +#.TYPE_ATTR +ExtendedPacketDelayBudget DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_ExtendedPacketDelayBudget_fmt) + +#.FN_BODY ExtendedRATRestrictionInformation/primaryRATRestriction VAL_PTR=¶meter_tvb + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_RATRestrictionInformation_e_UTRA, + &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, + &hf_ngap_RATRestrictionInformation_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_RATRestrictionInformation); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + +#.FN_BODY ExtendedRATRestrictionInformation/secondaryRATRestriction VAL_PTR=¶meter_tvb + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_RATRestrictionInformation_e_UTRA, + &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, + &hf_ngap_RATRestrictionInformation_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_RATRestrictionInformation); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + +#.TYPE_ATTR +LAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX +#.FN_BODY LAC VAL_PTR = ¶meter_tvb HF_INDEX = -1 + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + if (parameter_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN); + } + +#.FN_BODY MDTModeEutra VAL_PTR = &mdt_mode_eutra_tvb + tvbuff_t *mdt_mode_eutra_tvb = NULL; +%(DEFAULT_BODY)s + if (mdt_mode_eutra_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MDTModeEutra); + dissect_s1ap_MDTMode_PDU(mdt_mode_eutra_tvb, actx->pinfo, subtree, NULL); + } + +#.FN_BODY MeasurementsToActivate VAL_PTR=¶meter_tvb + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_MeasurementsToActivate_M1, + &hf_ngap_MeasurementsToActivate_M2, + &hf_ngap_MeasurementsToActivate_M4, + &hf_ngap_MeasurementsToActivate_M5, + &hf_ngap_MeasurementsToActivate_M6, + &hf_ngap_MeasurementsToActivate_M7, + &hf_ngap_MeasurementsToActivate_M1_from_event, + &hf_ngap_MeasurementsToActivate_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MeasurementsToActivate); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + +#.FN_BODY MDT-Location-Information VAL_PTR=¶meter_tvb + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_MDT_Location_Information_GNSS, + &hf_ngap_MDT_Location_Information_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MDT_Location_Information); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + +#.FN_BODY NRMobilityHistoryReport VAL_PTR = &nr_mob_hist_report_tvb + tvbuff_t *nr_mob_hist_report_tvb = NULL; +%(DEFAULT_BODY)s + if (nr_mob_hist_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NRMobilityHistoryReport); + dissect_nr_rrc_VisitedCellInfoList_r16_PDU(nr_mob_hist_report_tvb, actx->pinfo, subtree, NULL); + } + +#.FN_BODY LTEUERLFReportContainer VAL_PTR = <e_ue_rlf_report_tvb + tvbuff_t *lte_ue_rlf_report_tvb = NULL; +%(DEFAULT_BODY)s + if (lte_ue_rlf_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_LTEUERLFReportContainer); + dissect_lte_rrc_RLF_Report_r9_PDU(lte_ue_rlf_report_tvb, actx->pinfo, subtree, NULL); + } + +#.FN_BODY NRUERLFReportContainer VAL_PTR = &nr_ue_rlc_report_tvb + tvbuff_t *nr_ue_rlc_report_tvb = NULL; +%(DEFAULT_BODY)s + if (nr_ue_rlc_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NRUERLFReportContainer); + dissect_nr_rrc_nr_RLF_Report_r16_PDU(nr_ue_rlc_report_tvb, actx->pinfo, subtree, NULL); + } + +#.TYPE_ATTR +Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds + +#.TYPE_ATTR +Threshold-RSRP DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_Threshold_RSRP_fmt) + +#.TYPE_ATTR +Threshold-RSRQ DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_Threshold_RSRQ_fmt) + +#.TYPE_ATTR +Threshold-SINR DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_Threshold_SINR_fmt) + +#.TYPE_ATTR +WLANName TYPE=FT_STRING DISPLAY = STR_UNICODE +#.FN_BODY WLANName VAL_PTR = ¶meter_tvb HF_INDEX = -1 + tvbuff_t *parameter_tvb = NULL; +%(DEFAULT_BODY)s + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA); +#.END + #.ASSIGN_VALUE_TO_TYPE # NGAP does not have constants assigned to types, they are pure INTEGER # ProcedureCode @@ -825,181 +1117,292 @@ id-UplinkRANStatusTransfer ProcedureCode id-UplinkUEAssociatedNRPPaTransport ProcedureCode id-WriteReplaceWarning ProcedureCode id-SecondaryRATDataUsageReport ProcedureCode +id-UplinkRIMInformationTransfer ProcedureCode +id-DownlinkRIMInformationTransfer ProcedureCode +id-RetrieveUEInformation ProcedureCode +id-UEInformationTransfer ProcedureCode +id-RANCPRelocationIndication ProcedureCode +id-UEContextResume ProcedureCode +id-UEContextSuspend ProcedureCode +id-UERadioCapabilityIDMapping ProcedureCode +id-HandoverSuccess ProcedureCode +id-UplinkRANEarlyStatusTransfer ProcedureCode +id-DownlinkRANEarlyStatusTransfer ProcedureCode +id-AMFCPRelocationIndication ProcedureCode +id-ConnectionEstablishmentIndication ProcedureCode # ProtocolIE-ID -id-AllowedNSSAI ProtocolIE-ID -id-AMFName ProtocolIE-ID -id-AMFOverloadResponse ProtocolIE-ID -id-AMFSetID ProtocolIE-ID -id-AMF-TNLAssociationFailedToSetupList ProtocolIE-ID -id-AMF-TNLAssociationSetupList ProtocolIE-ID -id-AMF-TNLAssociationToAddList ProtocolIE-ID -id-AMF-TNLAssociationToRemoveList ProtocolIE-ID -id-AMF-TNLAssociationToUpdateList ProtocolIE-ID -id-AMFTrafficLoadReductionIndication ProtocolIE-ID -id-AMF-UE-NGAP-ID ProtocolIE-ID -id-AssistanceDataForPaging ProtocolIE-ID -id-BroadcastCancelledAreaList ProtocolIE-ID -id-BroadcastCompletedAreaList ProtocolIE-ID -id-CancelAllWarningMessages ProtocolIE-ID -id-Cause ProtocolIE-ID -id-CellIDListForRestart ProtocolIE-ID -id-ConcurrentWarningMessageInd ProtocolIE-ID -id-CoreNetworkAssistanceInformationForInactive ProtocolIE-ID -id-CriticalityDiagnostics ProtocolIE-ID -id-DataCodingScheme ProtocolIE-ID -id-DefaultPagingDRX ProtocolIE-ID -id-DirectForwardingPathAvailability ProtocolIE-ID -id-EmergencyAreaIDListForRestart ProtocolIE-ID -id-EmergencyFallbackIndicator ProtocolIE-ID -id-EUTRA-CGI ProtocolIE-ID -id-FiveG-S-TMSI ProtocolIE-ID -id-GlobalRANNodeID ProtocolIE-ID -id-GUAMI ProtocolIE-ID -id-HandoverType ProtocolIE-ID -id-IMSVoiceSupportIndicator ProtocolIE-ID -id-IndexToRFSP ProtocolIE-ID -id-InfoOnRecommendedCellsAndRANNodesForPaging ProtocolIE-ID -id-LocationReportingRequestType ProtocolIE-ID -id-MaskedIMEISV ProtocolIE-ID -id-MessageIdentifier ProtocolIE-ID -id-MobilityRestrictionList ProtocolIE-ID -id-NASC ProtocolIE-ID -id-NAS-PDU ProtocolIE-ID -id-NASSecurityParametersFromNGRAN ProtocolIE-ID -id-NewAMF-UE-NGAP-ID ProtocolIE-ID -id-NewSecurityContextInd ProtocolIE-ID -id-NGAP-Message ProtocolIE-ID -id-NGRAN-CGI ProtocolIE-ID -id-NGRANTraceID ProtocolIE-ID -id-NR-CGI ProtocolIE-ID -id-NRPPa-PDU ProtocolIE-ID -id-NumberOfBroadcastsRequested ProtocolIE-ID -id-OldAMF ProtocolIE-ID -id-OverloadStartNSSAIList ProtocolIE-ID -id-PagingDRX ProtocolIE-ID -id-PagingOrigin ProtocolIE-ID -id-PagingPriority ProtocolIE-ID -id-PDUSessionResourceAdmittedList ProtocolIE-ID -id-PDUSessionResourceFailedToModifyListModRes ProtocolIE-ID -id-PDUSessionResourceFailedToSetupListCxtRes ProtocolIE-ID -id-PDUSessionResourceFailedToSetupListHOAck ProtocolIE-ID -id-PDUSessionResourceFailedToSetupListPSReq ProtocolIE-ID -id-PDUSessionResourceFailedToSetupListSURes ProtocolIE-ID -id-PDUSessionResourceHandoverList ProtocolIE-ID -id-PDUSessionResourceListCxtRelCpl ProtocolIE-ID -id-PDUSessionResourceListHORqd ProtocolIE-ID -id-PDUSessionResourceModifyListModCfm ProtocolIE-ID -id-PDUSessionResourceModifyListModInd ProtocolIE-ID -id-PDUSessionResourceModifyListModReq ProtocolIE-ID -id-PDUSessionResourceModifyListModRes ProtocolIE-ID -id-PDUSessionResourceNotifyList ProtocolIE-ID -id-PDUSessionResourceReleasedListNot ProtocolIE-ID -id-PDUSessionResourceReleasedListPSAck ProtocolIE-ID -id-PDUSessionResourceReleasedListPSFail ProtocolIE-ID -id-PDUSessionResourceReleasedListRelRes ProtocolIE-ID -id-PDUSessionResourceSetupListCxtReq ProtocolIE-ID -id-PDUSessionResourceSetupListCxtRes ProtocolIE-ID -id-PDUSessionResourceSetupListHOReq ProtocolIE-ID -id-PDUSessionResourceSetupListSUReq ProtocolIE-ID -id-PDUSessionResourceSetupListSURes ProtocolIE-ID -id-PDUSessionResourceToBeSwitchedDLList ProtocolIE-ID -id-PDUSessionResourceSwitchedList ProtocolIE-ID -id-PDUSessionResourceToReleaseListHOCmd ProtocolIE-ID -id-PDUSessionResourceToReleaseListRelCmd ProtocolIE-ID -id-PLMNSupportList ProtocolIE-ID -id-PWSFailedCellIDList ProtocolIE-ID -id-RANNodeName ProtocolIE-ID -id-RANPagingPriority ProtocolIE-ID -id-RANStatusTransfer-TransparentContainer ProtocolIE-ID -id-RAN-UE-NGAP-ID ProtocolIE-ID -id-RelativeAMFCapacity ProtocolIE-ID -id-RepetitionPeriod ProtocolIE-ID -id-ResetType ProtocolIE-ID -id-RoutingID ProtocolIE-ID -id-RRCEstablishmentCause ProtocolIE-ID -id-RRCInactiveTransitionReportRequest ProtocolIE-ID -id-RRCState ProtocolIE-ID -id-SecurityContext ProtocolIE-ID -id-SecurityKey ProtocolIE-ID -id-SerialNumber ProtocolIE-ID -id-ServedGUAMIList ProtocolIE-ID -id-SliceSupportList ProtocolIE-ID -id-SONConfigurationTransferDL ProtocolIE-ID -id-SONConfigurationTransferUL ProtocolIE-ID -id-SourceAMF-UE-NGAP-ID ProtocolIE-ID -id-SourceToTarget-TransparentContainer ProtocolIE-ID -id-SupportedTAList ProtocolIE-ID -id-TAIListForPaging ProtocolIE-ID -id-TAIListForRestart ProtocolIE-ID -id-TargetID ProtocolIE-ID -id-TargetToSource-TransparentContainer ProtocolIE-ID -id-TimeToWait ProtocolIE-ID -id-TraceActivation ProtocolIE-ID -id-TraceCollectionEntityIPAddress ProtocolIE-ID -id-UEAggregateMaximumBitRate ProtocolIE-ID -id-UE-associatedLogicalNG-connectionList ProtocolIE-ID -id-UEContextRequest ProtocolIE-ID -id-UE-NGAP-IDs ProtocolIE-ID -id-UEPagingIdentity ProtocolIE-ID -id-UEPresenceInAreaOfInterestList ProtocolIE-ID -id-UERadioCapability ProtocolIE-ID -id-UERadioCapabilityForPaging ProtocolIE-ID -id-UESecurityCapabilities ProtocolIE-ID -id-UnavailableGUAMIList ProtocolIE-ID -id-UserLocationInformation ProtocolIE-ID -id-WarningAreaList ProtocolIE-ID -id-WarningMessageContents ProtocolIE-ID -id-WarningSecurityInfo ProtocolIE-ID -id-WarningType ProtocolIE-ID -id-AdditionalUL-NGU-UP-TNLInformation ProtocolIE-ID -id-DataForwardingNotPossible ProtocolIE-ID -id-DL-NGU-UP-TNLInformation ProtocolIE-ID -id-NetworkInstance ProtocolIE-ID -id-PDUSessionAggregateMaximumBitRate ProtocolIE-ID -id-PDUSessionResourceFailedToModifyListModCfm ProtocolIE-ID -id-PDUSessionResourceFailedToSetupListCxtFail ProtocolIE-ID -id-PDUSessionResourceListCxtRelReq ProtocolIE-ID -id-PDUSessionType ProtocolIE-ID -id-QosFlowAddOrModifyRequestList ProtocolIE-ID -id-QosFlowSetupRequestList ProtocolIE-ID -id-QosFlowToReleaseList ProtocolIE-ID -id-SecurityIndication ProtocolIE-ID -id-UL-NGU-UP-TNLInformation ProtocolIE-ID -id-UL-NGU-UP-TNLModifyList ProtocolIE-ID -id-WarningAreaCoordinates ProtocolIE-ID -id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID -id-HandoverFlag ProtocolIE-ID -id-SecondaryRATUsageInformation ProtocolIE-ID -id-PDUSessionResourceReleaseResponseTransfer ProtocolIE-ID -id-RedirectionVoiceFallback ProtocolIE-ID -id-UERetentionInformation ProtocolIE-ID -id-S-NSSAI ProtocolIE-ID -id-PSCellInformation ProtocolIE-ID -id-LastEUTRAN-PLMNIdentity ProtocolIE-ID -id-MaximumIntegrityProtectedDataRate-DL ProtocolIE-ID -id-AdditionalDLForwardingUPTNLInformation ProtocolIE-ID -id-AdditionalDLUPTNLInformationForHOList ProtocolIE-ID -id-AdditionalNGU-UP-TNLInformation ProtocolIE-ID -id-AdditionalDLQosFlowPerTNLInformation ProtocolIE-ID -id-SecurityResult ProtocolIE-ID -id-ENDC-SONConfigurationTransferDL ProtocolIE-ID -id-ENDC-SONConfigurationTransferUL ProtocolIE-ID -id-OldAssociatedQosFlowList-ULendmarkerexpected ProtocolIE-ID -id-CNTypeRestrictionsForEquivalent ProtocolIE-ID -id-CNTypeRestrictionsForServing ProtocolIE-ID -id-NewGUAMI ProtocolIE-ID -id-ULForwarding ProtocolIE-ID -id-ULForwardingUP-TNLInformation ProtocolIE-ID -id-CNAssistedRANTuning ProtocolIE-ID -id-CommonNetworkInstance ProtocolIE-ID -id-NGRAN-TNLAssociationToRemoveList ProtocolIE-ID -id-TNLAssociationTransportLayerAddressNGRAN ProtocolIE-ID -id-EndpointIPAddressAndPort ProtocolIE-ID -id-LocationReportingAdditionalInfo ProtocolIE-ID -id-SourceToTarget-AMFInformationReroute ProtocolIE-ID -id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID -id-SCTP-TLAs ProtocolIE-ID +id-AllowedNSSAI ProtocolIE-ID +id-AMFName ProtocolIE-ID +id-AMFOverloadResponse ProtocolIE-ID +id-AMFSetID ProtocolIE-ID +id-AMF-TNLAssociationFailedToSetupList ProtocolIE-ID +id-AMF-TNLAssociationSetupList ProtocolIE-ID +id-AMF-TNLAssociationToAddList ProtocolIE-ID +id-AMF-TNLAssociationToRemoveList ProtocolIE-ID +id-AMF-TNLAssociationToUpdateList ProtocolIE-ID +id-AMFTrafficLoadReductionIndication ProtocolIE-ID +id-AMF-UE-NGAP-ID ProtocolIE-ID +id-AssistanceDataForPaging ProtocolIE-ID +id-BroadcastCancelledAreaList ProtocolIE-ID +id-BroadcastCompletedAreaList ProtocolIE-ID +id-CancelAllWarningMessages ProtocolIE-ID +id-Cause ProtocolIE-ID +id-CellIDListForRestart ProtocolIE-ID +id-ConcurrentWarningMessageInd ProtocolIE-ID +id-CoreNetworkAssistanceInformationForInactive ProtocolIE-ID +id-CriticalityDiagnostics ProtocolIE-ID +id-DataCodingScheme ProtocolIE-ID +id-DefaultPagingDRX ProtocolIE-ID +id-DirectForwardingPathAvailability ProtocolIE-ID +id-EmergencyAreaIDListForRestart ProtocolIE-ID +id-EmergencyFallbackIndicator ProtocolIE-ID +id-EUTRA-CGI ProtocolIE-ID +id-FiveG-S-TMSI ProtocolIE-ID +id-GlobalRANNodeID ProtocolIE-ID +id-GUAMI ProtocolIE-ID +id-HandoverType ProtocolIE-ID +id-IMSVoiceSupportIndicator ProtocolIE-ID +id-IndexToRFSP ProtocolIE-ID +id-InfoOnRecommendedCellsAndRANNodesForPaging ProtocolIE-ID +id-LocationReportingRequestType ProtocolIE-ID +id-MaskedIMEISV ProtocolIE-ID +id-MessageIdentifier ProtocolIE-ID +id-MobilityRestrictionList ProtocolIE-ID +id-NASC ProtocolIE-ID +id-NAS-PDU ProtocolIE-ID +id-NASSecurityParametersFromNGRAN ProtocolIE-ID +id-NewAMF-UE-NGAP-ID ProtocolIE-ID +id-NewSecurityContextInd ProtocolIE-ID +id-NGAP-Message ProtocolIE-ID +id-NGRAN-CGI ProtocolIE-ID +id-NGRANTraceID ProtocolIE-ID +id-NR-CGI ProtocolIE-ID +id-NRPPa-PDU ProtocolIE-ID +id-NumberOfBroadcastsRequested ProtocolIE-ID +id-OldAMF ProtocolIE-ID +id-OverloadStartNSSAIList ProtocolIE-ID +id-PagingDRX ProtocolIE-ID +id-PagingOrigin ProtocolIE-ID +id-PagingPriority ProtocolIE-ID +id-PDUSessionResourceAdmittedList ProtocolIE-ID +id-PDUSessionResourceFailedToModifyListModRes ProtocolIE-ID +id-PDUSessionResourceFailedToSetupListCxtRes ProtocolIE-ID +id-PDUSessionResourceFailedToSetupListHOAck ProtocolIE-ID +id-PDUSessionResourceFailedToSetupListPSReq ProtocolIE-ID +id-PDUSessionResourceFailedToSetupListSURes ProtocolIE-ID +id-PDUSessionResourceHandoverList ProtocolIE-ID +id-PDUSessionResourceListCxtRelCpl ProtocolIE-ID +id-PDUSessionResourceListHORqd ProtocolIE-ID +id-PDUSessionResourceModifyListModCfm ProtocolIE-ID +id-PDUSessionResourceModifyListModInd ProtocolIE-ID +id-PDUSessionResourceModifyListModReq ProtocolIE-ID +id-PDUSessionResourceModifyListModRes ProtocolIE-ID +id-PDUSessionResourceNotifyList ProtocolIE-ID +id-PDUSessionResourceReleasedListNot ProtocolIE-ID +id-PDUSessionResourceReleasedListPSAck ProtocolIE-ID +id-PDUSessionResourceReleasedListPSFail ProtocolIE-ID +id-PDUSessionResourceReleasedListRelRes ProtocolIE-ID +id-PDUSessionResourceSetupListCxtReq ProtocolIE-ID +id-PDUSessionResourceSetupListCxtRes ProtocolIE-ID +id-PDUSessionResourceSetupListHOReq ProtocolIE-ID +id-PDUSessionResourceSetupListSUReq ProtocolIE-ID +id-PDUSessionResourceSetupListSURes ProtocolIE-ID +id-PDUSessionResourceToBeSwitchedDLList ProtocolIE-ID +id-PDUSessionResourceSwitchedList ProtocolIE-ID +id-PDUSessionResourceToReleaseListHOCmd ProtocolIE-ID +id-PDUSessionResourceToReleaseListRelCmd ProtocolIE-ID +id-PLMNSupportList ProtocolIE-ID +id-PWSFailedCellIDList ProtocolIE-ID +id-RANNodeName ProtocolIE-ID +id-RANPagingPriority ProtocolIE-ID +id-RANStatusTransfer-TransparentContainer ProtocolIE-ID +id-RAN-UE-NGAP-ID ProtocolIE-ID +id-RelativeAMFCapacity ProtocolIE-ID +id-RepetitionPeriod ProtocolIE-ID +id-ResetType ProtocolIE-ID +id-RoutingID ProtocolIE-ID +id-RRCEstablishmentCause ProtocolIE-ID +id-RRCInactiveTransitionReportRequest ProtocolIE-ID +id-RRCState ProtocolIE-ID +id-SecurityContext ProtocolIE-ID +id-SecurityKey ProtocolIE-ID +id-SerialNumber ProtocolIE-ID +id-ServedGUAMIList ProtocolIE-ID +id-SliceSupportList ProtocolIE-ID +id-SONConfigurationTransferDL ProtocolIE-ID +id-SONConfigurationTransferUL ProtocolIE-ID +id-SourceAMF-UE-NGAP-ID ProtocolIE-ID +id-SourceToTarget-TransparentContainer ProtocolIE-ID +id-SupportedTAList ProtocolIE-ID +id-TAIListForPaging ProtocolIE-ID +id-TAIListForRestart ProtocolIE-ID +id-TargetID ProtocolIE-ID +id-TargetToSource-TransparentContainer ProtocolIE-ID +id-TimeToWait ProtocolIE-ID +id-TraceActivation ProtocolIE-ID +id-TraceCollectionEntityIPAddress ProtocolIE-ID +id-UEAggregateMaximumBitRate ProtocolIE-ID +id-UE-associatedLogicalNG-connectionList ProtocolIE-ID +id-UEContextRequest ProtocolIE-ID +id-UE-NGAP-IDs ProtocolIE-ID +id-UEPagingIdentity ProtocolIE-ID +id-UEPresenceInAreaOfInterestList ProtocolIE-ID +id-UERadioCapability ProtocolIE-ID +id-UERadioCapabilityForPaging ProtocolIE-ID +id-UESecurityCapabilities ProtocolIE-ID +id-UnavailableGUAMIList ProtocolIE-ID +id-UserLocationInformation ProtocolIE-ID +id-WarningAreaList ProtocolIE-ID +id-WarningMessageContents ProtocolIE-ID +id-WarningSecurityInfo ProtocolIE-ID +id-WarningType ProtocolIE-ID +id-AdditionalUL-NGU-UP-TNLInformation ProtocolIE-ID +id-DataForwardingNotPossible ProtocolIE-ID +id-DL-NGU-UP-TNLInformation ProtocolIE-ID +id-NetworkInstance ProtocolIE-ID +id-PDUSessionAggregateMaximumBitRate ProtocolIE-ID +id-PDUSessionResourceFailedToModifyListModCfm ProtocolIE-ID +id-PDUSessionResourceFailedToSetupListCxtFail ProtocolIE-ID +id-PDUSessionResourceListCxtRelReq ProtocolIE-ID +id-PDUSessionType ProtocolIE-ID +id-QosFlowAddOrModifyRequestList ProtocolIE-ID +id-QosFlowSetupRequestList ProtocolIE-ID +id-QosFlowToReleaseList ProtocolIE-ID +id-SecurityIndication ProtocolIE-ID +id-UL-NGU-UP-TNLInformation ProtocolIE-ID +id-UL-NGU-UP-TNLModifyList ProtocolIE-ID +id-WarningAreaCoordinates ProtocolIE-ID +id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID +id-HandoverFlag ProtocolIE-ID +id-SecondaryRATUsageInformation ProtocolIE-ID +id-PDUSessionResourceReleaseResponseTransfer ProtocolIE-ID +id-RedirectionVoiceFallback ProtocolIE-ID +id-UERetentionInformation ProtocolIE-ID +id-S-NSSAI ProtocolIE-ID +id-PSCellInformation ProtocolIE-ID +id-LastEUTRAN-PLMNIdentity ProtocolIE-ID +id-MaximumIntegrityProtectedDataRate-DL ProtocolIE-ID +id-AdditionalDLForwardingUPTNLInformation ProtocolIE-ID +id-AdditionalDLUPTNLInformationForHOList ProtocolIE-ID +id-AdditionalNGU-UP-TNLInformation ProtocolIE-ID +id-AdditionalDLQosFlowPerTNLInformation ProtocolIE-ID +id-SecurityResult ProtocolIE-ID +id-ENDC-SONConfigurationTransferDL ProtocolIE-ID +id-ENDC-SONConfigurationTransferUL ProtocolIE-ID +id-OldAssociatedQosFlowList-ULendmarkerexpected ProtocolIE-ID +id-CNTypeRestrictionsForEquivalent ProtocolIE-ID +id-CNTypeRestrictionsForServing ProtocolIE-ID +id-NewGUAMI ProtocolIE-ID +id-ULForwarding ProtocolIE-ID +id-ULForwardingUP-TNLInformation ProtocolIE-ID +id-CNAssistedRANTuning ProtocolIE-ID +id-CommonNetworkInstance ProtocolIE-ID +id-NGRAN-TNLAssociationToRemoveList ProtocolIE-ID +id-TNLAssociationTransportLayerAddressNGRAN ProtocolIE-ID +id-EndpointIPAddressAndPort ProtocolIE-ID +id-LocationReportingAdditionalInfo ProtocolIE-ID +id-SourceToTarget-AMFInformationReroute ProtocolIE-ID +id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID +id-SCTP-TLAs ProtocolIE-ID +id-DataForwardingResponseERABList ProtocolIE-ID +id-RIMInformationTransfer ProtocolIE-ID +id-GUAMIType ProtocolIE-ID +id-SRVCCOperationPossible ProtocolIE-ID +id-TargetRNC-ID ProtocolIE-ID +id-RAT-Information ProtocolIE-ID +id-ExtendedRATRestrictionInformation ProtocolIE-ID +id-QosMonitoringRequest ProtocolIE-ID +id-SgNB-UE-X2AP-ID ProtocolIE-ID +id-AdditionalRedundantDL-NGU-UP-TNLInformation ProtocolIE-ID +id-AdditionalRedundantDLQosFlowPerTNLInformation ProtocolIE-ID +id-AdditionalRedundantNGU-UP-TNLInformation ProtocolIE-ID +id-AdditionalRedundantUL-NGU-UP-TNLInformation ProtocolIE-ID +id-CNPacketDelayBudgetDL ProtocolIE-ID +id-CNPacketDelayBudgetUL ProtocolIE-ID +id-ExtendedPacketDelayBudget ProtocolIE-ID +id-RedundantCommonNetworkInstance ProtocolIE-ID +id-RedundantDL-NGU-TNLInformationReused ProtocolIE-ID +id-RedundantDL-NGU-UP-TNLInformation ProtocolIE-ID +id-RedundantDLQosFlowPerTNLInformation ProtocolIE-ID +id-RedundantQosFlowIndicator ProtocolIE-ID +id-RedundantUL-NGU-UP-TNLInformation ProtocolIE-ID +id-TSCTrafficCharacteristics ProtocolIE-ID +id-RedundantPDUSessionInformation ProtocolIE-ID +id-UsedRSNInformation ProtocolIE-ID +id-IAB-Authorized ProtocolIE-ID +id-IAB-Supported ProtocolIE-ID +id-IABNodeIndication ProtocolIE-ID +id-NB-IoT-PagingDRX ProtocolIE-ID +id-NB-IoT-Paging-eDRXInfo ProtocolIE-ID +id-NB-IoT-DefaultPagingDRX ProtocolIE-ID +id-Enhanced-CoverageRestriction ProtocolIE-ID +id-Extended-ConnectedTime ProtocolIE-ID +id-PagingAssisDataforCEcapabUE ProtocolIE-ID +id-WUS-Assistance-Information ProtocolIE-ID +id-UE-DifferentiationInfo ProtocolIE-ID +id-NB-IoT-UEPriority ProtocolIE-ID +id-UL-CP-SecurityInformation ProtocolIE-ID +id-DL-CP-SecurityInformation ProtocolIE-ID +id-TAI ProtocolIE-ID +id-UERadioCapabilityForPagingOfNB-IoT ProtocolIE-ID +id-LTEV2XServicesAuthorized ProtocolIE-ID +id-NRV2XServicesAuthorized ProtocolIE-ID +id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID +id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID +id-PC5QoSParameters ProtocolIE-ID +id-AlternativeQoSParaSetList ProtocolIE-ID +id-CurrentQoSParaSetIndex ProtocolIE-ID +id-CEmodeBrestricted ProtocolIE-ID +id-PagingeDRXInformation ProtocolIE-ID +id-CEmodeBSupport-Indicator ProtocolIE-ID +id-LTEM-Indication ProtocolIE-ID +id-EndIndication ProtocolIE-ID +id-EDT-Session ProtocolIE-ID +id-UECapabilityInfoRequest ProtocolIE-ID +id-PDUSessionResourceFailedToResumeListRESReq ProtocolIE-ID +id-PDUSessionResourceFailedToResumeListRESRes ProtocolIE-ID +id-PDUSessionResourceSuspendListSUSReq ProtocolIE-ID +id-PDUSessionResourceResumeListRESReq ProtocolIE-ID +id-PDUSessionResourceResumeListRESRes ProtocolIE-ID +id-UE-UP-CIoT-Support ProtocolIE-ID +id-Suspend-Request-Indication ProtocolIE-ID +id-Suspend-Response-Indication ProtocolIE-ID +id-RRC-Resume-Cause ProtocolIE-ID +id-RGLevelWirelineAccessCharacteristics ProtocolIE-ID +id-W-AGFIdentityInformation ProtocolIE-ID +id-GlobalTNGF-ID ProtocolIE-ID +id-GlobalTWIF-ID ProtocolIE-ID +id-GlobalW-AGF-ID ProtocolIE-ID +id-UserLocationInformationW-AGF ProtocolIE-ID +id-UserLocationInformationTNGF ProtocolIE-ID +id-AuthenticatedIndication ProtocolIE-ID +id-TNGFIdentityInformation ProtocolIE-ID +id-TWIFIdentityInformation ProtocolIE-ID +id-UserLocationInformationTWIF ProtocolIE-ID +id-SelectedPLMNIdentity ProtocolIE-ID +id-IntersystemSONConfigurationTransferDL ProtocolIE-ID +id-IntersystemSONConfigurationTransferUL ProtocolIE-ID +id-SONInformationReport ProtocolIE-ID +id-UEHistoryInformationFromTheUE ProtocolIE-ID +id-ManagementBasedMDTPLMNList ProtocolIE-ID +id-MDTConfiguration ProtocolIE-ID +id-PrivacyIndicator ProtocolIE-ID +id-TraceCollectionEntityURI ProtocolIE-ID +id-NPN-Support ProtocolIE-ID +id-NPN-AccessInformation ProtocolIE-ID +id-NPN-PagingAssistanceInformation ProtocolIE-ID +id-NPN-MobilityInformation ProtocolIE-ID +id-TargettoSource-Failure-TransparentContainer ProtocolIE-ID +id-NID ProtocolIE-ID +id-UERadioCapabilityID ProtocolIE-ID +id-UERadioCapability-EUTRA-Format ProtocolIE-ID +id-DAPSRequestInfo ProtocolIE-ID +id-DAPSResponseInfoList ProtocolIE-ID +id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID +id-NotifySourceNGRANNode ProtocolIE-ID +id-ExtendedSliceSupportList ProtocolIE-ID +id-ExtendedTAISliceSupportList ProtocolIE-ID #.END @@ -1160,6 +1563,73 @@ CommonNetworkInstance N ngap.ies id-CommonNetworkInstance NGRAN-TNLAssociationToRemoveList N ngap.ies id-NGRAN-TNLAssociationToRemoveList EndpointIPAddressAndPort N ngap.ies id-EndpointIPAddressAndPort SourceToTarget-AMFInformationReroute N ngap.ies id-SourceToTarget-AMFInformationReroute +RIMInformationTransfer N ngap.ies id-RIMInformationTransfer +SRVCCOperationPossible N ngap.ies id-SRVCCOperationPossible +TargetRNC-ID N ngap.ies id-TargetRNC-ID +UPTransportLayerInformationList N ngap.ies id-AdditionalRedundantUL-NGU-UP-TNLInformation +CommonNetworkInstance N ngap.ies id-RedundantCommonNetworkInstance +UPTransportLayerInformation N ngap.ies id-RedundantUL-NGU-UP-TNLInformation +RedundantPDUSessionInformation N ngap.ies id-RedundantPDUSessionInformation +IAB-Authorized N ngap.ies id-IAB-Authorized +IAB-Supported N ngap.ies id-IAB-Supported +IABNodeIndication N ngap.ies id-IABNodeIndication +NB-IoT-PagingDRX N ngap.ies id-NB-IoT-PagingDRX +NB-IoT-Paging-eDRXInfo N ngap.ies id-NB-IoT-Paging-eDRXInfo +NB-IoT-DefaultPagingDRX N ngap.ies id-NB-IoT-DefaultPagingDRX +Enhanced-CoverageRestriction N ngap.ies id-Enhanced-CoverageRestriction +Extended-ConnectedTime N ngap.ies id-Extended-ConnectedTime +PagingAssisDataforCEcapabUE N ngap.ies id-PagingAssisDataforCEcapabUE +WUS-Assistance-Information N ngap.ies id-WUS-Assistance-Information +UE-DifferentiationInfo N ngap.ies id-UE-DifferentiationInfo +NB-IoT-UEPriority N ngap.ies id-NB-IoT-UEPriority +UL-CP-SecurityInformation N ngap.ies id-UL-CP-SecurityInformation +DL-CP-SecurityInformation N ngap.ies id-DL-CP-SecurityInformation +TAI N ngap.ies id-TAI +LTEV2XServicesAuthorized N ngap.ies id-LTEV2XServicesAuthorized +NRV2XServicesAuthorized N ngap.ies id-NRV2XServicesAuthorized +LTEUESidelinkAggregateMaximumBitrate N ngap.ies id-LTEUESidelinkAggregateMaximumBitrate +NRUESidelinkAggregateMaximumBitrate N ngap.ies id-NRUESidelinkAggregateMaximumBitrate +PC5QoSParameters N ngap.ies id-PC5QoSParameters +CEmodeBrestricted N ngap.ies id-CEmodeBrestricted +PagingeDRXInformation N ngap.ies id-PagingeDRXInformation +CEmodeBSupport-Indicator N ngap.ies id-CEmodeBSupport-Indicator +LTEM-Indication N ngap.ies id-LTEM-Indication +EndIndication N ngap.ies id-EndIndication +EDT-Session N ngap.ies id-EDT-Session +UECapabilityInfoRequest N ngap.ies id-UECapabilityInfoRequest +PDUSessionResourceFailedToResumeListRESReq N ngap.ies id-PDUSessionResourceFailedToResumeListRESReq +PDUSessionResourceFailedToResumeListRESRes N ngap.ies id-PDUSessionResourceFailedToResumeListRESRes +PDUSessionResourceSuspendListSUSReq N ngap.ies id-PDUSessionResourceSuspendListSUSReq +PDUSessionResourceResumeListRESReq N ngap.ies id-PDUSessionResourceResumeListRESReq +PDUSessionResourceResumeListRESRes N ngap.ies id-PDUSessionResourceResumeListRESRes +UE-UP-CIoT-Support N ngap.ies id-UE-UP-CIoT-Support +Suspend-Request-Indication N ngap.ies id-Suspend-Request-Indication +Suspend-Response-Indication N ngap.ies id-Suspend-Response-Indication +RRCEstablishmentCause N ngap.ies id-RRC-Resume-Cause +RGLevelWirelineAccessCharacteristics N ngap.ies id-RGLevelWirelineAccessCharacteristics +W-AGFIdentityInformation N ngap.ies id-W-AGFIdentityInformation +GlobalTNGF-ID N ngap.ies id-GlobalTNGF-ID +GlobalTWIF-ID N ngap.ies id-GlobalTWIF-ID +GlobalW-AGF-ID N ngap.ies id-GlobalW-AGF-ID +UserLocationInformationW-AGF N ngap.ies id-UserLocationInformationW-AGF +UserLocationInformationTNGF N ngap.ies id-UserLocationInformationTNGF +AuthenticatedIndication N ngap.ies id-AuthenticatedIndication +TNGFIdentityInformation N ngap.ies id-TNGFIdentityInformation +TWIFIdentityInformation N ngap.ies id-TWIFIdentityInformation +UserLocationInformationTWIF N ngap.ies id-UserLocationInformationTWIF +PLMNIdentity N ngap.ies id-SelectedPLMNIdentity +IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferDL +IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferUL +SONInformationReport N ngap.ies id-SONInformationReport +MDTPLMNList N ngap.ies id-ManagementBasedMDTPLMNList +PrivacyIndicator N ngap.ies id-PrivacyIndicator +URI-address N ngap.ies id-TraceCollectionEntityURI +NPN-AccessInformation N ngap.ies id-NPN-AccessInformation +TargettoSource-Failure-TransparentContainer N ngap.ies id-TargettoSource-Failure-TransparentContainer +UERadioCapabilityID N ngap.ies id-UERadioCapabilityID +UERadioCapability N ngap.ies id-UERadioCapability-EUTRA-Format +EarlyStatusTransfer-TransparentContainer N ngap.ies id-EarlyStatusTransfer-TransparentContainer +NotifySourceNGRANNode N ngap.ies id-NotifySourceNGRANNode #NGAP-PROTOCOL-EXTENSION @@ -1182,6 +1652,41 @@ CPTransportLayerInformation N ngap.extension id-TNLAs LocationReportingAdditionalInfo N ngap.extension id-LocationReportingAdditionalInfo UPTransportLayerInformationList N ngap.extension id-AdditionalULForwardingUPTNLInformation SCTP-TLAs N ngap.extension id-SCTP-TLAs +DataForwardingResponseERABList N ngap.extension id-DataForwardingResponseERABList +GUAMIType N ngap.extension id-GUAMIType +RAT-Information N ngap.extension id-RAT-Information +ExtendedRATRestrictionInformation N ngap.extension id-ExtendedRATRestrictionInformation +QosMonitoringRequest N ngap.extension id-QosMonitoringRequest +SgNB-UE-X2AP-ID N ngap.extension id-SgNB-UE-X2AP-ID +UPTransportLayerInformation N ngap.extension id-AdditionalRedundantDL-NGU-UP-TNLInformation +QosFlowPerTNLInformationList N ngap.extension id-AdditionalRedundantDLQosFlowPerTNLInformation +UPTransportLayerInformationPairList N ngap.extension id-AdditionalRedundantNGU-UP-TNLInformation +ExtendedPacketDelayBudget N ngap.extension id-CNPacketDelayBudgetDL +ExtendedPacketDelayBudget N ngap.extension id-CNPacketDelayBudgetUL +ExtendedPacketDelayBudget N ngap.extension id-ExtendedPacketDelayBudget +DL-NGU-TNLInformationReused N ngap.extension id-RedundantDL-NGU-TNLInformationReused +UPTransportLayerInformation N ngap.extension id-RedundantDL-NGU-UP-TNLInformation +QosFlowPerTNLInformation N ngap.extension id-RedundantDLQosFlowPerTNLInformation +RedundantQosFlowIndicator N ngap.extension id-RedundantQosFlowIndicator +UPTransportLayerInformation N ngap.extension id-RedundantUL-NGU-UP-TNLInformation +TSCTrafficCharacteristics N ngap.extension id-TSCTrafficCharacteristics +RedundantPDUSessionInformation N ngap.extension id-UsedRSNInformation +PagingAssisDataforCEcapabUE N ngap.extension id-PagingAssisDataforCEcapabUE +UERadioCapabilityForPagingOfNB-IoT N ngap.extension id-UERadioCapabilityForPagingOfNB-IoT +AlternativeQoSParaSetList N ngap.extension id-AlternativeQoSParaSetList +AlternativeQoSParaSetIndex N ngap.extension id-CurrentQoSParaSetIndex +PagingeDRXInformation N ngap.extension id-PagingeDRXInformation +UEHistoryInformationFromTheUE N ngap.extension id-UEHistoryInformationFromTheUE +MDT-Configuration N ngap.extension id-MDTConfiguration +URI-address N ngap.extension id-TraceCollectionEntityURI +NPN-Support N ngap.extension id-NPN-Support +NPN-PagingAssistanceInformation N ngap.extension id-NPN-PagingAssistanceInformation +NPN-MobilityInformation N ngap.extension id-NPN-MobilityInformation +NID N ngap.extension id-NID +DAPSRequestInfo N ngap.extension id-DAPSRequestInfo +DAPSResponseInfoList N ngap.extension id-DAPSResponseInfoList +ExtendedSliceSupportList N ngap.extension id-ExtendedSliceSupportList +ExtendedSliceSupportList N ngap.extension id-ExtendedTAISliceSupportList #NGAP-ELEMENTARY-PROCEDURE @@ -1189,10 +1694,14 @@ AMFConfigurationUpdate N ngap.proc.imsg id-AMFConfigurationUpda AMFConfigurationUpdateAcknowledge N ngap.proc.sout id-AMFConfigurationUpdate AMFConfigurationUpdateFailure N ngap.proc.uout id-AMFConfigurationUpdate +AMFCPRelocationIndication N ngap.proc.imsg id-AMFCPRelocationIndication + AMFStatusIndication N ngap.proc.imsg id-AMFStatusIndication CellTrafficTrace N ngap.proc.imsg id-CellTrafficTrace +ConnectionEstablishmentIndication N ngap.proc.imsg id-ConnectionEstablishmentIndication + DeactivateTrace N ngap.proc.imsg id-DeactivateTrace DownlinkNASTransport N ngap.proc.imsg id-DownlinkNASTransport @@ -1201,6 +1710,8 @@ DownlinkNonUEAssociatedNRPPaTransport N ngap.proc.imsg id-DownlinkNonUEAssocia DownlinkRANConfigurationTransfer N ngap.proc.imsg id-DownlinkRANConfigurationTransfer +DownlinkRANEarlyStatusTransfer N ngap.proc.imsg id-DownlinkRANEarlyStatusTransfer + DownlinkRANStatusTransfer N ngap.proc.imsg id-DownlinkRANStatusTransfer DownlinkUEAssociatedNRPPaTransport N ngap.proc.imsg id-DownlinkUEAssociatedNRPPaTransport @@ -1220,6 +1731,8 @@ HandoverRequest N ngap.proc.imsg id-HandoverResourceAllo HandoverRequestAcknowledge N ngap.proc.sout id-HandoverResourceAllocation HandoverFailure N ngap.proc.uout id-HandoverResourceAllocation +HandoverSuccess N ngap.proc.imsg id-HandoverSuccess + InitialContextSetupRequest N ngap.proc.imsg id-InitialContextSetup InitialContextSetupResponse N ngap.proc.sout id-InitialContextSetup InitialContextSetupFailure N ngap.proc.uout id-InitialContextSetup @@ -1278,8 +1791,12 @@ RANConfigurationUpdate N ngap.proc.imsg id-RANConfigurationUpda RANConfigurationUpdateAcknowledge N ngap.proc.sout id-RANConfigurationUpdate RANConfigurationUpdateFailure N ngap.proc.uout id-RANConfigurationUpdate +RANCPRelocationIndication N ngap.proc.imsg id-RANCPRelocationIndication + RerouteNASRequest N ngap.proc.imsg id-RerouteNASRequest +RetrieveUEInformation N ngap.proc.imsg id-RetrieveUEInformation + RRCInactiveTransitionReport N ngap.proc.imsg id-RRCInactiveTransitionReport SecondaryRATDataUsageReport N ngap.proc.imsg id-SecondaryRATDataUsageReport @@ -1297,11 +1814,23 @@ UEContextReleaseComplete N ngap.proc.sout id-UEContextRelease UEContextReleaseRequest N ngap.proc.imsg id-UEContextReleaseRequest +UEContextResumeRequest N ngap.proc.imsg id-UEContextResume +UEContextResumeResponse N ngap.proc.sout id-UEContextResume +UEContextResumeFailure N ngap.proc.uout id-UEContextResume + +UEContextSuspendRequest N ngap.proc.imsg id-UEContextSuspend +UEContextSuspendResponse N ngap.proc.sout id-UEContextSuspend +UEContextSuspendFailure N ngap.proc.uout id-UEContextSuspend + +UEInformationTransfer N ngap.proc.imsg id-UEInformationTransfer + UERadioCapabilityCheckRequest N ngap.proc.imsg id-UERadioCapabilityCheck UERadioCapabilityCheckResponse N ngap.proc.sout id-UERadioCapabilityCheck -UERadioCapabilityInfoIndication N ngap.proc.imsg id-UERadioCapabilityInfoIndication +UERadioCapabilityIDMappingRequest N ngap.proc.imsg id-UERadioCapabilityIDMapping +UERadioCapabilityIDMappingResponse N ngap.proc.sout id-UERadioCapabilityIDMapping +UERadioCapabilityInfoIndication N ngap.proc.imsg id-UERadioCapabilityInfoIndication UETNLABindingReleaseRequest N ngap.proc.imsg id-UETNLABindingRelease @@ -1311,6 +1840,8 @@ UplinkNonUEAssociatedNRPPaTransport N ngap.proc.imsg id-UplinkNonUEAssociate UplinkRANConfigurationTransfer N ngap.proc.imsg id-UplinkRANConfigurationTransfer +UplinkRANEarlyStatusTransfer N ngap.proc.imsg id-UplinkRANEarlyStatusTransfer + UplinkRANStatusTransfer N ngap.proc.imsg id-UplinkRANStatusTransfer UplinkUEAssociatedNRPPaTransport N ngap.proc.imsg id-UplinkUEAssociatedNRPPaTransport @@ -1318,6 +1849,10 @@ UplinkUEAssociatedNRPPaTransport N ngap.proc.imsg id-UplinkUEAssociatedNR WriteReplaceWarningRequest N ngap.proc.imsg id-WriteReplaceWarning WriteReplaceWarningResponse N ngap.proc.sout id-WriteReplaceWarning +UplinkRIMInformationTransfer N ngap.proc.imsg id-UplinkRIMInformationTransfer + +DownlinkRIMInformationTransfer N ngap.proc.imsg id-DownlinkRIMInformationTransfer + PDUSessionResourceSetupRequestTransfer S ngap.n2_ie_type "PDU_RES_SETUP_REQ" PDUSessionResourceSetupResponseTransfer S ngap.n2_ie_type "PDU_RES_SETUP_RSP" PDUSessionResourceSetupUnsuccessfulTransfer S ngap.n2_ie_type "PDU_RES_SETUP_FAIL" @@ -1355,12 +1890,18 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR AMFConfigurationUpdateFailure col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFConfigurationUpdateFailure"); +#.FN_HDR AMFCPRelocationIndication + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFCPRelocationIndication"); + #.FN_HDR AMFStatusIndication col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFStatusIndication"); #.FN_HDR CellTrafficTrace col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace"); +#.FN_HDR ConnectionEstablishmentIndication + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ConnectionEstablishmentIndication"); + #.FN_HDR DeactivateTrace col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace"); @@ -1373,6 +1914,9 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR DownlinkRANConfigurationTransfer col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANConfigurationTransfer"); +#.FN_HDR DownlinkRANEarlyStatusTransfer + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANEarlyStatusTransfer"); + #.FN_HDR DownlinkRANStatusTransfer col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANStatusTransfer"); @@ -1409,6 +1953,9 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR HandoverFailure col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFailure"); +#.FN_HDR HandoverSuccess + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverSuccess"); + #.FN_HDR InitialContextSetupRequest col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupRequest"); @@ -1517,9 +2064,15 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR RANConfigurationUpdateFailure col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANConfigurationUpdateFailure"); +#.FN_HDR RANCPRelocationIndication + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANCPRelocationIndication"); + #.FN_HDR RerouteNASRequest col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RerouteNASRequest"); +#.FN_HDR RetrieveUEInformation + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEInformation"); + #.FN_HDR RRCInactiveTransitionReport col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCInactiveTransitionReport"); @@ -1550,18 +2103,45 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR UEContextReleaseRequest col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseRequest"); +#.FN_HDR UEContextResumeRequest + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeRequest"); + +#.FN_HDR UEContextResumeResponse + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeResponse"); + +#.FN_HDR UEContextResumeFailure + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeFailure"); + +#.FN_HDR UEContextSuspendRequest + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendRequest"); + +#.FN_HDR UEContextSuspendResponse + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendResponse"); + +#.FN_HDR UEContextSuspendFailure + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendFailure"); + +#.FN_HDR UEInformationTransfer + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationTransfer"); + #.FN_HDR UERadioCapabilityCheckRequest col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityCheckRequest"); #.FN_HDR UERadioCapabilityCheckResponse col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityCheckResponse"); -#.FN_HDR UETNLABindingReleaseRequest - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UETNLABindingReleaseRequest"); +#.FN_HDR UERadioCapabilityIDMappingRequest + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingRequest"); + +#.FN_HDR UERadioCapabilityIDMappingResponse + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingResponse"); #.FN_HDR UERadioCapabilityInfoIndication col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityInfoIndication"); +#.FN_HDR UETNLABindingReleaseRequest + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UETNLABindingReleaseRequest"); + #.FN_HDR UplinkNASTransport col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkNASTransport"); @@ -1571,6 +2151,9 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR UplinkRANConfigurationTransfer col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANConfigurationTransfer"); +#.FN_HDR UplinkRANEarlyStatusTransfer + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANEarlyStatusTransfer"); + #.FN_HDR UplinkRANStatusTransfer col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANStatusTransfer"); @@ -1583,6 +2166,11 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB #.FN_HDR WriteReplaceWarningResponse col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningResponse"); +#.FN_HDR UplinkRIMInformationTransfer + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRIMInformationTransfer"); + +#.FN_HDR DownlinkRIMInformationTransfer + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRIMInformationTransfer"); # # Editor modelines - https://www.wireshark.org/tools/modelines.html diff --git a/epan/dissectors/asn1/ngap/packet-ngap-template.c b/epan/dissectors/asn1/ngap/packet-ngap-template.c index 1c91c199a8..d041968cf9 100644 --- a/epan/dissectors/asn1/ngap/packet-ngap-template.c +++ b/epan/dissectors/asn1/ngap/packet-ngap-template.c @@ -8,7 +8,7 @@ * * SPDX-License-Identifier: GPL-2.0-or-later * - * References: 3GPP TS 38.413 v15.6.0 (2019-12) + * References: 3GPP TS 38.413 v16.2.0 (2020-07) */ #include "config.h" @@ -31,6 +31,7 @@ #include "packet-e212.h" #include "packet-s1ap.h" #include "packet-ranap.h" +#include "packet-rrc.h" #include "packet-lte-rrc.h" #include "packet-nr-rrc.h" #include "packet-gsm_map.h" @@ -56,6 +57,8 @@ static dissector_handle_t nas_5gs_handle; static dissector_handle_t nr_rrc_ue_radio_paging_info_handle; static dissector_handle_t nr_rrc_ue_radio_access_cap_info_handle; static dissector_handle_t lte_rrc_ue_radio_paging_info_handle; +static dissector_handle_t lte_rrc_ue_radio_access_cap_info_handle; +static dissector_handle_t lte_rrc_ue_radio_paging_info_nb_handle; static dissector_handle_t nrppa_handle; static int proto_json = -1; @@ -78,6 +81,7 @@ static int hf_ngap_InterfacesToTrace_E1 = -1; static int hf_ngap_InterfacesToTrace_reserved = -1; static int hf_ngap_RATRestrictionInformation_e_UTRA = -1; static int hf_ngap_RATRestrictionInformation_nR = -1; +static int hf_ngap_RATRestrictionInformation_nR_unlicensed = -1; static int hf_ngap_RATRestrictionInformation_reserved = -1; static int hf_ngap_NrencyptionAlgorithms_nea1 = -1; static int hf_ngap_NrencyptionAlgorithms_nea2 = -1; @@ -95,6 +99,16 @@ static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia1 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia2 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia3 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved = -1; +static int hf_ngap_MeasurementsToActivate_M1 = -1; +static int hf_ngap_MeasurementsToActivate_M2 = -1; +static int hf_ngap_MeasurementsToActivate_M4 = -1; +static int hf_ngap_MeasurementsToActivate_M5 = -1; +static int hf_ngap_MeasurementsToActivate_M6 = -1; +static int hf_ngap_MeasurementsToActivate_M7 = -1; +static int hf_ngap_MeasurementsToActivate_M1_from_event = -1; +static int hf_ngap_MeasurementsToActivate_reserved = -1; +static int hf_ngap_MDT_Location_Information_GNSS = -1; +static int hf_ngap_MDT_Location_Information_reserved = -1; #include "packet-ngap-hf.c" /* Initialize the subtree pointers */ @@ -124,6 +138,16 @@ static gint ett_ngap_NASSecurityParametersFromNGRAN = -1; static gint ett_ngap_NASC = -1; static gint ett_ngap_NAS_PDU = -1; static gint ett_ngap_EN_DCSONConfigurationTransfer = -1; +static gint ett_ngap_BurstArrivalTime = -1; +static gint ett_ngap_CoverageEnhancementLevel = -1; +static gint ett_ngap_MDTModeEutra = -1; +static gint ett_ngap_MeasurementsToActivate = -1; +static gint ett_ngap_MDT_Location_Information = -1; +static gint ett_ngap_NRMobilityHistoryReport = -1; +static gint ett_ngap_LTEUERLFReportContainer = -1; +static gint ett_ngap_NRUERLFReportContainer = -1; +static gint ett_ngap_TargettoSource_Failure_TransparentContainer = -1; +static gint ett_ngap_UERadioCapabilityForPagingOfNB_IoT = -1; #include "packet-ngap-ett.c" static expert_field ei_ngap_number_pages_le15 = EI_INIT; @@ -148,6 +172,8 @@ struct ngap_conv_info { address addr_b; guint32 port_b; GlobalRANNodeID_enum ranmode_id_b; + wmem_map_t *nbiot_ta; + wmem_tree_t *nbiot_ran_ue_ngap_id; }; enum { @@ -155,6 +181,16 @@ enum { TARGET_TO_SOURCE_TRANSPARENT_CONTAINER }; +struct ngap_supported_ta { + guint32 tac; + wmem_array_t *plmn; +}; + +struct ngap_tai { + guint32 plmn; + guint32 tac; +}; + struct ngap_private_data { struct ngap_conv_info *ngap_conv; guint32 procedure_code; @@ -164,6 +200,9 @@ struct ngap_private_data { guint32 handover_type_value; guint8 data_coding_scheme; guint8 transparent_container_type; + struct ngap_supported_ta *supported_ta; + struct ngap_tai *tai; + guint32 ran_ue_ngap_id; }; enum { @@ -179,10 +218,24 @@ static const enum_val_t ngap_target_ng_ran_container_vals[] = { {NULL, NULL, -1} }; +enum { + NGAP_LTE_CONTAINER_AUTOMATIC, + NGAP_LTE_CONTAINER_LEGACY, + NGAP_LTE_CONTAINER_NBIOT +}; + +static const enum_val_t ngap_lte_container_vals[] = { + {"automatic", "Automatic", NGAP_LTE_CONTAINER_AUTOMATIC}, + {"legacy", "Legacy LTE", NGAP_LTE_CONTAINER_LEGACY}, + {"nb-iot","NB-IoT", NGAP_LTE_CONTAINER_NBIOT}, + {NULL, NULL, -1} +}; + /* Global variables */ static guint gbl_ngapSctpPort = SCTP_PORT_NGAP; static gboolean ngap_dissect_container = TRUE; static gint ngap_dissect_target_ng_ran_container_as = NGAP_NG_RAN_CONTAINER_AUTOMATIC; +static gint ngap_dissect_lte_container_as = NGAP_LTE_CONTAINER_AUTOMATIC; /* Dissector tables */ static dissector_table_t ngap_ies_dissector_table; @@ -226,6 +279,7 @@ static int dissect_PathSwitchRequestAcknowledgeTransfer_PDU(tvbuff_t *tvb _U_, p static int dissect_PathSwitchRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_HandoverPreparationUnsuccessfulTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_PDUSessionResourceReleaseCommandTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); const value_string ngap_serialNumber_gs_vals[] = { { 0, "Display mode iamfdiate, cell wide"}, @@ -322,6 +376,30 @@ ngap_PeriodicRegistrationUpdateTimer_fmt(gchar *s, guint32 v) } } +static void +ngap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v); +} + +static void +ngap_Threshold_RSRP_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v); +} + +static void +ngap_Threshold_RSRQ_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v); +} + +static void +ngap_Threshold_SINR_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v); +} + static struct ngap_private_data* ngap_get_private_data(packet_info *pinfo) { @@ -350,6 +428,29 @@ ngap_get_ranmode_id(address *addr, guint32 port, packet_info *pinfo) return ranmode_id; } +static gboolean +ngap_is_nbiot_ue(packet_info *pinfo) +{ + struct ngap_private_data *ngap_data = ngap_get_private_data(pinfo); + + if (ngap_data->ngap_conv) { + wmem_tree_key_t tree_key[3]; + guint32 *id; + + tree_key[0].length = 1; + tree_key[0].key = &ngap_data->ran_ue_ngap_id; + tree_key[1].length = 1; + tree_key[1].key = &pinfo->num; + tree_key[2].length = 0; + tree_key[2].key = NULL; + id = (guint32*)wmem_tree_lookup32_array_le(ngap_data->ngap_conv->nbiot_ran_ue_ngap_id, tree_key); + if (id && (*id == ngap_data->ran_ue_ngap_id)) { + return TRUE; + } + } + return FALSE; +} + #include "packet-ngap-fn.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) @@ -447,6 +548,8 @@ dissect_ngap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_ copy_address_wmem(wmem_file_scope(), &ngap_data->ngap_conv->addr_b, &pinfo->dst); ngap_data->ngap_conv->port_b = pinfo->destport; ngap_data->ngap_conv->ranmode_id_b = (GlobalRANNodeID_enum)-1; + ngap_data->ngap_conv->nbiot_ta = wmem_map_new(wmem_file_scope(), wmem_int64_hash, g_int64_equal); + ngap_data->ngap_conv->nbiot_ran_ue_ngap_id = wmem_tree_new(wmem_file_scope()); conversation_add_proto_data(conversation, proto_ngap, ngap_data->ngap_conv); } @@ -578,6 +681,8 @@ proto_reg_handoff_ngap(void) nr_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_paging_info", proto_ngap); nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_ngap); lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_ngap); + lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_ngap); + lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_ngap); dissector_add_for_decode_as("sctp.port", ngap_handle); dissector_add_uint("sctp.ppi", NGAP_PROTOCOL_ID, ngap_handle); Initialized=TRUE; @@ -661,9 +766,13 @@ void proto_register_ngap(void) { { "nR", "ngap.RATRestrictionInformation.nR", FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x40, NULL, HFILL }}, + { &hf_ngap_RATRestrictionInformation_nR_unlicensed, + { "nR-unlicensed", "ngap.RATRestrictionInformation.nR_unlicensed", + FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20, + NULL, HFILL }}, { &hf_ngap_RATRestrictionInformation_reserved, { "reserved", "ngap.RATRestrictionInformation.reserved", - FT_UINT8, BASE_HEX, NULL, 0x3f, + FT_UINT8, BASE_HEX, NULL, 0x1f, NULL, HFILL }}, { &hf_ngap_NrencyptionAlgorithms_nea1, { "128-NEA1", "ngap.NrencyptionAlgorithms.nea1", @@ -729,6 +838,46 @@ void proto_register_ngap(void) { { "Reserved", "ngap.EUTRAintegrityProtectionAlgorithms.reserved", FT_UINT16, BASE_HEX, NULL, 0x1fff, NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M1, + { "M1", "ngap.MeasurementsToActivate.M1", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x80, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M2, + { "M2", "ngap.MeasurementsToActivate.M2", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x40, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M4, + { "M4", "ngap.MeasurementsToActivate.M4", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x20, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M5, + { "M5", "ngap.MeasurementsToActivate.M5", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x10, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M6, + { "M6", "ngap.MeasurementsToActivate.M6", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x08, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M7, + { "M7", "ngap.MeasurementsToActivate.M7", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x04, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M1_from_event, + { "M1 from event", "ngap.MeasurementsToActivate.M1_from_event", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x02, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_reserved, + { "Reserved", "ngap.MeasurementsToActivate.reserved", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_ngap_MDT_Location_Information_GNSS, + { "GNSS", "ngap.MDT_Location_Information.GNSS", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x80, + NULL, HFILL }}, + { &hf_ngap_MDT_Location_Information_reserved, + { "Reserved", "ngap.MDT_Location_Information.reserved", + FT_BOOLEAN, 8, NULL, 0x7f, + NULL, HFILL }}, #include "packet-ngap-hfarr.c" }; @@ -760,6 +909,16 @@ void proto_register_ngap(void) { &ett_ngap_NASC, &ett_ngap_NAS_PDU, &ett_ngap_EN_DCSONConfigurationTransfer, + &ett_ngap_BurstArrivalTime, + &ett_ngap_CoverageEnhancementLevel, + &ett_ngap_MDTModeEutra, + &ett_ngap_MeasurementsToActivate, + &ett_ngap_MDT_Location_Information, + &ett_ngap_NRMobilityHistoryReport, + &ett_ngap_LTEUERLFReportContainer, + &ett_ngap_NRUERLFReportContainer, + &ett_ngap_TargettoSource_Failure_TransparentContainer, + &ett_ngap_UERadioCapabilityForPagingOfNB_IoT, #include "packet-ngap-ettarr.c" }; @@ -809,6 +968,9 @@ void proto_register_ngap(void) { "Select whether target NG-RAN container should be decoded automatically" " (based on NG Setup procedure) or manually", &ngap_dissect_target_ng_ran_container_as, ngap_target_ng_ran_container_vals, FALSE); + prefs_register_enum_preference(ngap_module, "dissect_lte_container_as", "Dissect LTE container as", + "Select whether LTE container should be dissected as NB-IOT or legacy LTE", + &ngap_dissect_lte_container_as, ngap_lte_container_vals, FALSE); } /* diff --git a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf index 5643be886c..88a5b982ca 100644 --- a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf +++ b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf @@ -77,6 +77,7 @@ P-Max_PDU PH-TypeListMCG_PDU PH-TypeListSCG_PDU RadioBearerConfig_PDU +ReferenceTime-r16_PDU RRCReconfiguration_PDU RRCReconfigurationComplete_PDU SIB1_PDU @@ -102,6 +103,7 @@ UEAssistanceInformation_PDU UERadioPagingInformation_PDU UL-DCCH-Message_PDU UplinkTxDirectCurrentList_PDU +VisitedCellInfoList-r16_PDU #.PDU BandCombinationIndex @@ -131,6 +133,7 @@ PCCH-Message @pcch PH-TypeListMCG PH-TypeListSCG RadioBearerConfig +ReferenceTime-r16 RRCReconfiguration @rrc_reconf RRCReconfigurationComplete SBCCH-SL-BCH-Message @sbcch.sl.bch @@ -162,6 +165,7 @@ UL-CCCH-Message @ul.ccch UL-CCCH1-Message @ul.ccch1 UL-DCCH-Message @ul.dcch UplinkTxDirectCurrentList +VisitedCellInfoList-r16 #.END #.OMIT_ASSIGNMENT diff --git a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c index 227a3e7673..33aadd11a5 100644 --- a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c +++ b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c @@ -513,6 +513,18 @@ nr_rrc_SRS_RSRP_r16_fmt(gchar *s, guint32 v) #include "packet-nr-rrc-fn.c" +int +dissect_nr_rrc_nr_RLF_Report_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); + proto_item_set_hidden(prot_ti); + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_nr_rrc_T_nr_RLF_Report_r16(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_BCCH_DL_SCH_Message_PDU); + offset += 7; offset >>= 3; + return offset; +} + void proto_register_nr_rrc(void) { diff --git a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h index 9b505ddaef..4ebdac5fbd 100644 --- a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h +++ b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h @@ -12,5 +12,5 @@ #define PACKET_NR_RRC_H #include "packet-nr-rrc-exp.h" - +int dissect_nr_rrc_nr_RLF_Report_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); #endif /* PACKET_NR_RRC_H */ diff --git a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c index ce6f020381..ba4aea2a1e 100644 --- a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c +++ b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c @@ -158,6 +158,8 @@ static int ett_s1ap_sSRSSIMeasurement = -1; static int ett_s1ap_quantityConfigNR_R15 = -1; static int ett_s1ap_blackCellsToAddModList = -1; static int ett_s1ap_NB_IoT_RLF_Report_Container = -1; +static int ett_s1ap_MDT_ConfigurationNR = -1; +static int ett_s1ap_IntersystemSONConfigurationTransfer = -1; #include "packet-s1ap-ett.c" static expert_field ei_s1ap_number_pages_le15 = EI_INIT; @@ -760,6 +762,8 @@ void proto_register_s1ap(void) { &ett_s1ap_quantityConfigNR_R15, &ett_s1ap_blackCellsToAddModList, &ett_s1ap_NB_IoT_RLF_Report_Container, + &ett_s1ap_MDT_ConfigurationNR, + &ett_s1ap_IntersystemSONConfigurationTransfer, #include "packet-s1ap-ettarr.c" }; diff --git a/epan/dissectors/asn1/s1ap/s1ap.cnf b/epan/dissectors/asn1/s1ap/s1ap.cnf index 5672b3845e..b3c4f78d1b 100644 --- a/epan/dissectors/asn1/s1ap/s1ap.cnf +++ b/epan/dissectors/asn1/s1ap/s1ap.cnf @@ -28,6 +28,7 @@ Global-ENB-ID HandoverRestrictionList_PDU LastVisitedEUTRANCellInformation_PDU LastVisitedGERANCellInformation_PDU +MDTMode_PDU SourceeNB-ToTargeteNB-TransparentContainer_PDU SONtransferApplicationIdentity_PDU SONtransferRequestContainer_PDU @@ -45,6 +46,7 @@ EUTRAN-CGI HandoverRestrictionList LastVisitedEUTRANCellInformation LastVisitedGERANCellInformation +MDTMode S1AP-PDU SourceeNB-ToTargeteNB-TransparentContainer SONtransferApplicationIdentity @@ -1429,6 +1431,24 @@ ScheduledCommunicationTime/timeofDayEnd DISPLAY=BASE_DEC|BASE_UNIT_STRING STRING #.TYPE_ATTR TrafficLoadReductionIndication DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent +#.FN_BODY MDT-ConfigurationNR 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_s1ap_MDT_ConfigurationNR); + dissect_ngap_MDT_Configuration_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + +#.FN_BODY IntersystemSONConfigurationTransfer 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_s1ap_IntersystemSONConfigurationTransfer); + dissect_ngap_SONConfigurationTransfer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + #.ASSIGN_VALUE_TO_TYPE # S1AP does not have constants assigned to types, they are pure INTEGER # ProcedureCode diff --git a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c index 5f0eea6bab..b58255b8c8 100644 --- a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c +++ b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c @@ -170,6 +170,7 @@ static int ett_x2ap_Non_anchorCarrierFrequency = -1; static int ett_x2ap_ReportCharacteristics_ENDC = -1; static int ett_x2ap_TargetCellInNGRAN = -1; static int ett_x2ap_TDDULDLConfigurationCommonNR = -1; +static int ett_x2ap_MDT_ConfigurationNR = -1; #include "packet-x2ap-ett.c" /* Forward declarations */ @@ -684,6 +685,7 @@ void proto_register_x2ap(void) { &ett_x2ap_ReportCharacteristics_ENDC, &ett_x2ap_TargetCellInNGRAN, &ett_x2ap_TDDULDLConfigurationCommonNR, + &ett_x2ap_MDT_ConfigurationNR, #include "packet-x2ap-ettarr.c" }; diff --git a/epan/dissectors/asn1/x2ap/x2ap.cnf b/epan/dissectors/asn1/x2ap/x2ap.cnf index ce9af1e3d3..1c21dead29 100644 --- a/epan/dissectors/asn1/x2ap/x2ap.cnf +++ b/epan/dissectors/asn1/x2ap/x2ap.cnf @@ -843,6 +843,15 @@ ScheduledCommunicationTime/timeofDayEnd DISPLAY=BASE_DEC|BASE_UNIT_STRING STRING if (x2ap_data->procedure_code == id_endcresourceStatusReportingInitiation) return dissect_x2ap_ReportCharacteristics_ENDC(tvb, offset, actx, tree, hf_x2ap_ReportCharacteristics_ENDC_PDU); +#.FN_BODY MDT-ConfigurationNR 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_x2ap_MDT_ConfigurationNR); + dissect_ngap_MDT_Configuration_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + #.END #.FN_HDR HandoverRequest diff --git a/epan/dissectors/packet-ngap.c b/epan/dissectors/packet-ngap.c index 52f42bb085..d4ab7037ee 100644 --- a/epan/dissectors/packet-ngap.c +++ b/epan/dissectors/packet-ngap.c @@ -16,7 +16,7 @@ * * SPDX-License-Identifier: GPL-2.0-or-later * - * References: 3GPP TS 38.413 v15.6.0 (2019-12) + * References: 3GPP TS 38.413 v16.2.0 (2020-07) */ #include "config.h" @@ -39,6 +39,7 @@ #include "packet-e212.h" #include "packet-s1ap.h" #include "packet-ranap.h" +#include "packet-rrc.h" #include "packet-lte-rrc.h" #include "packet-nr-rrc.h" #include "packet-gsm_map.h" @@ -64,6 +65,8 @@ static dissector_handle_t nas_5gs_handle; static dissector_handle_t nr_rrc_ue_radio_paging_info_handle; static dissector_handle_t nr_rrc_ue_radio_access_cap_info_handle; static dissector_handle_t lte_rrc_ue_radio_paging_info_handle; +static dissector_handle_t lte_rrc_ue_radio_access_cap_info_handle; +static dissector_handle_t lte_rrc_ue_radio_paging_info_nb_handle; static dissector_handle_t nrppa_handle; static int proto_json = -1; @@ -75,8 +78,12 @@ static int proto_json = -1; #define maxProtocolExtensions 65535 #define maxProtocolIEs 65535 #define maxnoofAllowedAreas 16 +#define maxnoofAllowedCAGsperPLMN 256 #define maxnoofAllowedS_NSSAIs 8 +#define maxnoofBluetoothName 4 #define maxnoofBPLMNs 12 +#define maxnoofCAGSperCell 64 +#define maxnoofCellIDforMDT 32 #define maxnoofCellIDforWarning 65535 #define maxnoofCellinAoI 256 #define maxnoofCellinEAI 65535 @@ -92,20 +99,29 @@ static int proto_json = -1; #define maxnoofEPLMNsPlusOne 16 #define maxnoofE_RABs 256 #define maxnoofErrors 256 +#define maxnoofExtSliceItems 65535 #define maxnoofForbTACs 4096 +#define maxnoofFreqforMDT 8 +#define maxnoofMDTPLMNs 16 #define maxnoofMultiConnectivity 4 #define maxnoofMultiConnectivityMinusOne 3 +#define maxnoofNeighPCIforMDT 32 #define maxnoofNGConnectionsToReset 65536 +#define maxnoofNRCellBands 32 +#define maxnoofPC5QoSFlows 2048 #define maxnoofPDUSessions 256 #define maxnoofPLMNs 12 #define maxnoofQosFlows 64 +#define maxnoofQosParaSets 8 #define maxnoofRANNodeinAoI 64 #define maxnoofRecommendedCells 16 #define maxnoofRecommendedRANNodes 16 #define maxnoofAoI 64 +#define maxnoofSensorName 3 #define maxnoofServedGUAMIs 256 #define maxnoofSliceItems 1024 #define maxnoofTACs 256 +#define maxnoofTAforMDT 8 #define maxnoofTAIforInactive 16 #define maxnoofTAIforPaging 16 #define maxnoofTAIforRestart 2048 @@ -113,9 +129,12 @@ static int proto_json = -1; #define maxnoofTAIinAoI 16 #define maxnoofTimePeriods 2 #define maxnoofTNLAssociations 32 +#define maxnoofWLANName 4 #define maxnoofXnExtTLAs 16 #define maxnoofXnGTP_TLAs 16 #define maxnoofXnTLAs 2 +#define maxnoofCandidateCells 32 +#define maxNRARFCN 3279165 typedef enum _ProcedureCode_enum { id_AMFConfigurationUpdate = 0, @@ -170,7 +189,20 @@ typedef enum _ProcedureCode_enum { id_UplinkRANStatusTransfer = 49, id_UplinkUEAssociatedNRPPaTransport = 50, id_WriteReplaceWarning = 51, - id_SecondaryRATDataUsageReport = 52 + id_SecondaryRATDataUsageReport = 52, + id_UplinkRIMInformationTransfer = 53, + id_DownlinkRIMInformationTransfer = 54, + id_RetrieveUEInformation = 55, + id_UEInformationTransfer = 56, + id_RANCPRelocationIndication = 57, + id_UEContextResume = 58, + id_UEContextSuspend = 59, + id_UERadioCapabilityIDMapping = 60, + id_HandoverSuccess = 61, + id_UplinkRANEarlyStatusTransfer = 62, + id_DownlinkRANEarlyStatusTransfer = 63, + id_AMFCPRelocationIndication = 64, + id_ConnectionEstablishmentIndication = 65 } ProcedureCode_enum; typedef enum _ProtocolIE_ID_enum { @@ -347,7 +379,105 @@ typedef enum _ProtocolIE_ID_enum { id_LocationReportingAdditionalInfo = 170, id_SourceToTarget_AMFInformationReroute = 171, id_AdditionalULForwardingUPTNLInformation = 172, - id_SCTP_TLAs = 173 + id_SCTP_TLAs = 173, + id_DataForwardingResponseERABList = 174, + id_RIMInformationTransfer = 175, + id_GUAMIType = 176, + id_SRVCCOperationPossible = 177, + id_TargetRNC_ID = 178, + id_RAT_Information = 179, + id_ExtendedRATRestrictionInformation = 180, + id_QosMonitoringRequest = 181, + id_SgNB_UE_X2AP_ID = 182, + id_AdditionalRedundantDL_NGU_UP_TNLInformation = 183, + id_AdditionalRedundantDLQosFlowPerTNLInformation = 184, + id_AdditionalRedundantNGU_UP_TNLInformation = 185, + id_AdditionalRedundantUL_NGU_UP_TNLInformation = 186, + id_CNPacketDelayBudgetDL = 187, + id_CNPacketDelayBudgetUL = 188, + id_ExtendedPacketDelayBudget = 189, + id_RedundantCommonNetworkInstance = 190, + id_RedundantDL_NGU_TNLInformationReused = 191, + id_RedundantDL_NGU_UP_TNLInformation = 192, + id_RedundantDLQosFlowPerTNLInformation = 193, + id_RedundantQosFlowIndicator = 194, + id_RedundantUL_NGU_UP_TNLInformation = 195, + id_TSCTrafficCharacteristics = 196, + id_RedundantPDUSessionInformation = 197, + id_UsedRSNInformation = 198, + id_IAB_Authorized = 199, + id_IAB_Supported = 200, + id_IABNodeIndication = 201, + id_NB_IoT_PagingDRX = 202, + id_NB_IoT_Paging_eDRXInfo = 203, + id_NB_IoT_DefaultPagingDRX = 204, + id_Enhanced_CoverageRestriction = 205, + id_Extended_ConnectedTime = 206, + id_PagingAssisDataforCEcapabUE = 207, + id_WUS_Assistance_Information = 208, + id_UE_DifferentiationInfo = 209, + id_NB_IoT_UEPriority = 210, + id_UL_CP_SecurityInformation = 211, + id_DL_CP_SecurityInformation = 212, + id_TAI = 213, + id_UERadioCapabilityForPagingOfNB_IoT = 214, + id_LTEV2XServicesAuthorized = 215, + id_NRV2XServicesAuthorized = 216, + id_LTEUESidelinkAggregateMaximumBitrate = 217, + id_NRUESidelinkAggregateMaximumBitrate = 218, + id_PC5QoSParameters = 219, + id_AlternativeQoSParaSetList = 220, + id_CurrentQoSParaSetIndex = 221, + id_CEmodeBrestricted = 222, + id_PagingeDRXInformation = 223, + id_CEmodeBSupport_Indicator = 224, + id_LTEM_Indication = 225, + id_EndIndication = 226, + id_EDT_Session = 227, + id_UECapabilityInfoRequest = 228, + id_PDUSessionResourceFailedToResumeListRESReq = 229, + id_PDUSessionResourceFailedToResumeListRESRes = 230, + id_PDUSessionResourceSuspendListSUSReq = 231, + id_PDUSessionResourceResumeListRESReq = 232, + id_PDUSessionResourceResumeListRESRes = 233, + id_UE_UP_CIoT_Support = 234, + id_Suspend_Request_Indication = 235, + id_Suspend_Response_Indication = 236, + id_RRC_Resume_Cause = 237, + id_RGLevelWirelineAccessCharacteristics = 238, + id_W_AGFIdentityInformation = 239, + id_GlobalTNGF_ID = 240, + id_GlobalTWIF_ID = 241, + id_GlobalW_AGF_ID = 242, + id_UserLocationInformationW_AGF = 243, + id_UserLocationInformationTNGF = 244, + id_AuthenticatedIndication = 245, + id_TNGFIdentityInformation = 246, + id_TWIFIdentityInformation = 247, + id_UserLocationInformationTWIF = 248, + id_SelectedPLMNIdentity = 249, + id_IntersystemSONConfigurationTransferDL = 250, + id_IntersystemSONConfigurationTransferUL = 251, + id_SONInformationReport = 252, + id_UEHistoryInformationFromTheUE = 253, + id_ManagementBasedMDTPLMNList = 254, + id_MDTConfiguration = 255, + id_PrivacyIndicator = 256, + id_TraceCollectionEntityURI = 257, + id_NPN_Support = 258, + id_NPN_AccessInformation = 259, + id_NPN_PagingAssistanceInformation = 260, + id_NPN_MobilityInformation = 261, + id_TargettoSource_Failure_TransparentContainer = 262, + id_NID = 263, + id_UERadioCapabilityID = 264, + id_UERadioCapability_EUTRA_Format = 265, + id_DAPSRequestInfo = 266, + id_DAPSResponseInfoList = 267, + id_EarlyStatusTransfer_TransparentContainer = 268, + id_NotifySourceNGRANNode = 269, + id_ExtendedSliceSupportList = 270, + id_ExtendedTAISliceSupportList = 271 } ProtocolIE_ID_enum; typedef enum _GlobalRANNodeID_enum { @@ -360,11 +490,17 @@ typedef enum _GlobalRANNodeID_enum { typedef enum _HandoverType_enum { intra5gs = 0, fivegs_to_eps = 1, - eps_to_5gs = 2 + eps_to_5gs = 2, + fivegs_to_utran = 3 } HandoverType_enum; +typedef enum _RAT_Information_enum { + unlicensed = 0, + nb_IoT = 1 +} RAT_Information_enum; + /*--- End of included file: packet-ngap-val.h ---*/ -#line 64 "./asn1/ngap/packet-ngap-template.c" +#line 67 "./asn1/ngap/packet-ngap-template.c" /* Initialize the protocol and registered fields */ static int proto_ngap = -1; @@ -382,6 +518,7 @@ static int hf_ngap_InterfacesToTrace_E1 = -1; static int hf_ngap_InterfacesToTrace_reserved = -1; static int hf_ngap_RATRestrictionInformation_e_UTRA = -1; static int hf_ngap_RATRestrictionInformation_nR = -1; +static int hf_ngap_RATRestrictionInformation_nR_unlicensed = -1; static int hf_ngap_RATRestrictionInformation_reserved = -1; static int hf_ngap_NrencyptionAlgorithms_nea1 = -1; static int hf_ngap_NrencyptionAlgorithms_nea2 = -1; @@ -399,11 +536,23 @@ static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia1 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia2 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia3 = -1; static int hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved = -1; +static int hf_ngap_MeasurementsToActivate_M1 = -1; +static int hf_ngap_MeasurementsToActivate_M2 = -1; +static int hf_ngap_MeasurementsToActivate_M4 = -1; +static int hf_ngap_MeasurementsToActivate_M5 = -1; +static int hf_ngap_MeasurementsToActivate_M6 = -1; +static int hf_ngap_MeasurementsToActivate_M7 = -1; +static int hf_ngap_MeasurementsToActivate_M1_from_event = -1; +static int hf_ngap_MeasurementsToActivate_reserved = -1; +static int hf_ngap_MDT_Location_Information_GNSS = -1; +static int hf_ngap_MDT_Location_Information_reserved = -1; /*--- Included file: packet-ngap-hf.c ---*/ #line 1 "./asn1/ngap/packet-ngap-hf.c" static int hf_ngap_AdditionalDLUPTNLInformationForHOList_PDU = -1; /* AdditionalDLUPTNLInformationForHOList */ static int hf_ngap_AllowedNSSAI_PDU = -1; /* AllowedNSSAI */ +static int hf_ngap_AlternativeQoSParaSetIndex_PDU = -1; /* AlternativeQoSParaSetIndex */ +static int hf_ngap_AlternativeQoSParaSetList_PDU = -1; /* AlternativeQoSParaSetList */ static int hf_ngap_AMFName_PDU = -1; /* AMFName */ static int hf_ngap_AMFSetID_PDU = -1; /* AMFSetID */ static int hf_ngap_AMF_TNLAssociationSetupList_PDU = -1; /* AMF_TNLAssociationSetupList */ @@ -413,11 +562,14 @@ static int hf_ngap_AMF_TNLAssociationToUpdateList_PDU = -1; /* AMF_TNLAssociati static int hf_ngap_AMF_UE_NGAP_ID_PDU = -1; /* AMF_UE_NGAP_ID */ static int hf_ngap_AssistanceDataForPaging_PDU = -1; /* AssistanceDataForPaging */ static int hf_ngap_AssociatedQosFlowList_PDU = -1; /* AssociatedQosFlowList */ +static int hf_ngap_AuthenticatedIndication_PDU = -1; /* AuthenticatedIndication */ static int hf_ngap_BroadcastCancelledAreaList_PDU = -1; /* BroadcastCancelledAreaList */ static int hf_ngap_BroadcastCompletedAreaList_PDU = -1; /* BroadcastCompletedAreaList */ static int hf_ngap_CancelAllWarningMessages_PDU = -1; /* CancelAllWarningMessages */ static int hf_ngap_Cause_PDU = -1; /* Cause */ static int hf_ngap_CellIDListForRestart_PDU = -1; /* CellIDListForRestart */ +static int hf_ngap_CEmodeBSupport_Indicator_PDU = -1; /* CEmodeBSupport_Indicator */ +static int hf_ngap_CEmodeBrestricted_PDU = -1; /* CEmodeBrestricted */ static int hf_ngap_CNAssistedRANTuning_PDU = -1; /* CNAssistedRANTuning */ static int hf_ngap_CNTypeRestrictionsForEquivalent_PDU = -1; /* CNTypeRestrictionsForEquivalent */ static int hf_ngap_CNTypeRestrictionsForServing_PDU = -1; /* CNTypeRestrictionsForServing */ @@ -428,15 +580,32 @@ static int hf_ngap_CPTransportLayerInformation_PDU = -1; /* CPTransportLayerInf static int hf_ngap_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics */ static int hf_ngap_DataCodingScheme_PDU = -1; /* DataCodingScheme */ static int hf_ngap_DataForwardingNotPossible_PDU = -1; /* DataForwardingNotPossible */ +static int hf_ngap_DAPSRequestInfo_PDU = -1; /* DAPSRequestInfo */ +static int hf_ngap_DAPSResponseInfoList_PDU = -1; /* DAPSResponseInfoList */ +static int hf_ngap_DataForwardingResponseERABList_PDU = -1; /* DataForwardingResponseERABList */ +static int hf_ngap_DL_CP_SecurityInformation_PDU = -1; /* DL_CP_SecurityInformation */ +static int hf_ngap_DL_NGU_TNLInformationReused_PDU = -1; /* DL_NGU_TNLInformationReused */ static int hf_ngap_DirectForwardingPathAvailability_PDU = -1; /* DirectForwardingPathAvailability */ +static int hf_ngap_EarlyStatusTransfer_TransparentContainer_PDU = -1; /* EarlyStatusTransfer_TransparentContainer */ +static int hf_ngap_EDT_Session_PDU = -1; /* EDT_Session */ static int hf_ngap_EmergencyAreaIDListForRestart_PDU = -1; /* EmergencyAreaIDListForRestart */ static int hf_ngap_EmergencyFallbackIndicator_PDU = -1; /* EmergencyFallbackIndicator */ +static int hf_ngap_Enhanced_CoverageRestriction_PDU = -1; /* Enhanced_CoverageRestriction */ +static int hf_ngap_Extended_ConnectedTime_PDU = -1; /* Extended_ConnectedTime */ static int hf_ngap_EN_DCSONConfigurationTransfer_PDU = -1; /* EN_DCSONConfigurationTransfer */ static int hf_ngap_EndpointIPAddressAndPort_PDU = -1; /* EndpointIPAddressAndPort */ +static int hf_ngap_EndIndication_PDU = -1; /* EndIndication */ static int hf_ngap_EUTRA_CGI_PDU = -1; /* EUTRA_CGI */ +static int hf_ngap_ExtendedPacketDelayBudget_PDU = -1; /* ExtendedPacketDelayBudget */ +static int hf_ngap_ExtendedRATRestrictionInformation_PDU = -1; /* ExtendedRATRestrictionInformation */ +static int hf_ngap_ExtendedSliceSupportList_PDU = -1; /* ExtendedSliceSupportList */ static int hf_ngap_FiveG_S_TMSI_PDU = -1; /* FiveG_S_TMSI */ static int hf_ngap_GlobalRANNodeID_PDU = -1; /* GlobalRANNodeID */ +static int hf_ngap_GlobalTNGF_ID_PDU = -1; /* GlobalTNGF_ID */ +static int hf_ngap_GlobalTWIF_ID_PDU = -1; /* GlobalTWIF_ID */ +static int hf_ngap_GlobalW_AGF_ID_PDU = -1; /* GlobalW_AGF_ID */ static int hf_ngap_GUAMI_PDU = -1; /* GUAMI */ +static int hf_ngap_GUAMIType_PDU = -1; /* GUAMIType */ static int hf_ngap_HandoverCommandTransfer_PDU = -1; /* HandoverCommandTransfer */ static int hf_ngap_HandoverFlag_PDU = -1; /* HandoverFlag */ static int hf_ngap_HandoverPreparationUnsuccessfulTransfer_PDU = -1; /* HandoverPreparationUnsuccessfulTransfer */ @@ -444,39 +613,66 @@ static int hf_ngap_HandoverRequestAcknowledgeTransfer_PDU = -1; /* HandoverRequ static int hf_ngap_HandoverRequiredTransfer_PDU = -1; /* HandoverRequiredTransfer */ static int hf_ngap_HandoverResourceAllocationUnsuccessfulTransfer_PDU = -1; /* HandoverResourceAllocationUnsuccessfulTransfer */ static int hf_ngap_HandoverType_PDU = -1; /* HandoverType */ +static int hf_ngap_IAB_Authorized_PDU = -1; /* IAB_Authorized */ +static int hf_ngap_IAB_Supported_PDU = -1; /* IAB_Supported */ +static int hf_ngap_IABNodeIndication_PDU = -1; /* IABNodeIndication */ static int hf_ngap_IMSVoiceSupportIndicator_PDU = -1; /* IMSVoiceSupportIndicator */ static int hf_ngap_IndexToRFSP_PDU = -1; /* IndexToRFSP */ static int hf_ngap_InfoOnRecommendedCellsAndRANNodesForPaging_PDU = -1; /* InfoOnRecommendedCellsAndRANNodesForPaging */ +static int hf_ngap_IntersystemSONConfigurationTransfer_PDU = -1; /* IntersystemSONConfigurationTransfer */ static int hf_ngap_ngap_LastVisitedNGRANCellInformation_PDU = -1; /* LastVisitedNGRANCellInformation */ static int hf_ngap_LocationReportingAdditionalInfo_PDU = -1; /* LocationReportingAdditionalInfo */ static int hf_ngap_LocationReportingRequestType_PDU = -1; /* LocationReportingRequestType */ +static int hf_ngap_LTEM_Indication_PDU = -1; /* LTEM_Indication */ +static int hf_ngap_LTEV2XServicesAuthorized_PDU = -1; /* LTEV2XServicesAuthorized */ +static int hf_ngap_LTEUESidelinkAggregateMaximumBitrate_PDU = -1; /* LTEUESidelinkAggregateMaximumBitrate */ static int hf_ngap_MaskedIMEISV_PDU = -1; /* MaskedIMEISV */ static int hf_ngap_MessageIdentifier_PDU = -1; /* MessageIdentifier */ static int hf_ngap_MaximumIntegrityProtectedDataRate_PDU = -1; /* MaximumIntegrityProtectedDataRate */ static int hf_ngap_ngap_MobilityRestrictionList_PDU = -1; /* MobilityRestrictionList */ +static int hf_ngap_MDTPLMNList_PDU = -1; /* MDTPLMNList */ +static int hf_ngap_ngap_MDT_Configuration_PDU = -1; /* MDT_Configuration */ static int hf_ngap_NAS_PDU_PDU = -1; /* NAS_PDU */ static int hf_ngap_NASSecurityParametersFromNGRAN_PDU = -1; /* NASSecurityParametersFromNGRAN */ +static int hf_ngap_NB_IoT_DefaultPagingDRX_PDU = -1; /* NB_IoT_DefaultPagingDRX */ +static int hf_ngap_NB_IoT_PagingDRX_PDU = -1; /* NB_IoT_PagingDRX */ +static int hf_ngap_NB_IoT_Paging_eDRXInfo_PDU = -1; /* NB_IoT_Paging_eDRXInfo */ +static int hf_ngap_NB_IoT_UEPriority_PDU = -1; /* NB_IoT_UEPriority */ static int hf_ngap_NetworkInstance_PDU = -1; /* NetworkInstance */ static int hf_ngap_NewSecurityContextInd_PDU = -1; /* NewSecurityContextInd */ +static int hf_ngap_NotifySourceNGRANNode_PDU = -1; /* NotifySourceNGRANNode */ static int hf_ngap_ngap_NGRAN_CGI_PDU = -1; /* NGRAN_CGI */ static int hf_ngap_NGRAN_TNLAssociationToRemoveList_PDU = -1; /* NGRAN_TNLAssociationToRemoveList */ static int hf_ngap_NGRANTraceID_PDU = -1; /* NGRANTraceID */ +static int hf_ngap_NID_PDU = -1; /* NID */ +static int hf_ngap_NPN_AccessInformation_PDU = -1; /* NPN_AccessInformation */ +static int hf_ngap_NPN_MobilityInformation_PDU = -1; /* NPN_MobilityInformation */ +static int hf_ngap_NPN_PagingAssistanceInformation_PDU = -1; /* NPN_PagingAssistanceInformation */ +static int hf_ngap_NPN_Support_PDU = -1; /* NPN_Support */ static int hf_ngap_NR_CGI_PDU = -1; /* NR_CGI */ static int hf_ngap_NRPPa_PDU_PDU = -1; /* NRPPa_PDU */ static int hf_ngap_NumberOfBroadcastsRequested_PDU = -1; /* NumberOfBroadcastsRequested */ +static int hf_ngap_NRV2XServicesAuthorized_PDU = -1; /* NRV2XServicesAuthorized */ +static int hf_ngap_NRUESidelinkAggregateMaximumBitrate_PDU = -1; /* NRUESidelinkAggregateMaximumBitrate */ static int hf_ngap_OverloadResponse_PDU = -1; /* OverloadResponse */ static int hf_ngap_OverloadStartNSSAIList_PDU = -1; /* OverloadStartNSSAIList */ +static int hf_ngap_PagingAssisDataforCEcapabUE_PDU = -1; /* PagingAssisDataforCEcapabUE */ static int hf_ngap_PagingDRX_PDU = -1; /* PagingDRX */ static int hf_ngap_PagingOrigin_PDU = -1; /* PagingOrigin */ static int hf_ngap_PagingPriority_PDU = -1; /* PagingPriority */ +static int hf_ngap_PagingeDRXInformation_PDU = -1; /* PagingeDRXInformation */ static int hf_ngap_PathSwitchRequestAcknowledgeTransfer_PDU = -1; /* PathSwitchRequestAcknowledgeTransfer */ static int hf_ngap_PathSwitchRequestSetupFailedTransfer_PDU = -1; /* PathSwitchRequestSetupFailedTransfer */ static int hf_ngap_PathSwitchRequestTransfer_PDU = -1; /* PathSwitchRequestTransfer */ static int hf_ngap_PathSwitchRequestUnsuccessfulTransfer_PDU = -1; /* PathSwitchRequestUnsuccessfulTransfer */ +static int hf_ngap_PC5QoSParameters_PDU = -1; /* PC5QoSParameters */ +static int hf_ngap_PrivacyIndicator_PDU = -1; /* PrivacyIndicator */ static int hf_ngap_PDUSessionAggregateMaximumBitRate_PDU = -1; /* PDUSessionAggregateMaximumBitRate */ static int hf_ngap_PDUSessionResourceAdmittedList_PDU = -1; /* PDUSessionResourceAdmittedList */ static int hf_ngap_PDUSessionResourceFailedToModifyListModCfm_PDU = -1; /* PDUSessionResourceFailedToModifyListModCfm */ static int hf_ngap_PDUSessionResourceFailedToModifyListModRes_PDU = -1; /* PDUSessionResourceFailedToModifyListModRes */ +static int hf_ngap_PDUSessionResourceFailedToResumeListRESReq_PDU = -1; /* PDUSessionResourceFailedToResumeListRESReq */ +static int hf_ngap_PDUSessionResourceFailedToResumeListRESRes_PDU = -1; /* PDUSessionResourceFailedToResumeListRESRes */ static int hf_ngap_PDUSessionResourceFailedToSetupListCxtFail_PDU = -1; /* PDUSessionResourceFailedToSetupListCxtFail */ static int hf_ngap_PDUSessionResourceFailedToSetupListCxtRes_PDU = -1; /* PDUSessionResourceFailedToSetupListCxtRes */ static int hf_ngap_PDUSessionResourceFailedToSetupListHOAck_PDU = -1; /* PDUSessionResourceFailedToSetupListHOAck */ @@ -505,6 +701,8 @@ static int hf_ngap_PDUSessionResourceReleasedListPSAck_PDU = -1; /* PDUSessionR static int hf_ngap_PDUSessionResourceReleasedListPSFail_PDU = -1; /* PDUSessionResourceReleasedListPSFail */ static int hf_ngap_PDUSessionResourceReleasedListRelRes_PDU = -1; /* PDUSessionResourceReleasedListRelRes */ static int hf_ngap_PDUSessionResourceReleaseResponseTransfer_PDU = -1; /* PDUSessionResourceReleaseResponseTransfer */ +static int hf_ngap_PDUSessionResourceResumeListRESReq_PDU = -1; /* PDUSessionResourceResumeListRESReq */ +static int hf_ngap_PDUSessionResourceResumeListRESRes_PDU = -1; /* PDUSessionResourceResumeListRESRes */ static int hf_ngap_PDUSessionResourceSecondaryRATUsageList_PDU = -1; /* PDUSessionResourceSecondaryRATUsageList */ static int hf_ngap_PDUSessionResourceSetupListCxtReq_PDU = -1; /* PDUSessionResourceSetupListCxtReq */ static int hf_ngap_PDUSessionResourceSetupListCxtRes_PDU = -1; /* PDUSessionResourceSetupListCxtRes */ @@ -514,6 +712,7 @@ static int hf_ngap_PDUSessionResourceSetupListSURes_PDU = -1; /* PDUSessionReso static int hf_ngap_PDUSessionResourceSetupRequestTransfer_PDU = -1; /* PDUSessionResourceSetupRequestTransfer */ static int hf_ngap_PDUSessionResourceSetupResponseTransfer_PDU = -1; /* PDUSessionResourceSetupResponseTransfer */ static int hf_ngap_PDUSessionResourceSetupUnsuccessfulTransfer_PDU = -1; /* PDUSessionResourceSetupUnsuccessfulTransfer */ +static int hf_ngap_PDUSessionResourceSuspendListSUSReq_PDU = -1; /* PDUSessionResourceSuspendListSUSReq */ static int hf_ngap_PDUSessionResourceSwitchedList_PDU = -1; /* PDUSessionResourceSwitchedList */ static int hf_ngap_PDUSessionResourceToBeSwitchedDLList_PDU = -1; /* PDUSessionResourceToBeSwitchedDLList */ static int hf_ngap_PDUSessionResourceToReleaseListHOCmd_PDU = -1; /* PDUSessionResourceToReleaseListHOCmd */ @@ -523,21 +722,28 @@ static int hf_ngap_PLMNIdentity_PDU = -1; /* PLMNIdentity */ static int hf_ngap_PLMNSupportList_PDU = -1; /* PLMNSupportList */ static int hf_ngap_PWSFailedCellIDList_PDU = -1; /* PWSFailedCellIDList */ static int hf_ngap_QosFlowAddOrModifyRequestList_PDU = -1; /* QosFlowAddOrModifyRequestList */ +static int hf_ngap_QosMonitoringRequest_PDU = -1; /* QosMonitoringRequest */ static int hf_ngap_QosFlowListWithCause_PDU = -1; /* QosFlowListWithCause */ +static int hf_ngap_QosFlowPerTNLInformation_PDU = -1; /* QosFlowPerTNLInformation */ static int hf_ngap_QosFlowPerTNLInformationList_PDU = -1; /* QosFlowPerTNLInformationList */ static int hf_ngap_QosFlowSetupRequestList_PDU = -1; /* QosFlowSetupRequestList */ static int hf_ngap_RANNodeName_PDU = -1; /* RANNodeName */ static int hf_ngap_RANPagingPriority_PDU = -1; /* RANPagingPriority */ static int hf_ngap_RANStatusTransfer_TransparentContainer_PDU = -1; /* RANStatusTransfer_TransparentContainer */ static int hf_ngap_RAN_UE_NGAP_ID_PDU = -1; /* RAN_UE_NGAP_ID */ +static int hf_ngap_RAT_Information_PDU = -1; /* RAT_Information */ static int hf_ngap_RedirectionVoiceFallback_PDU = -1; /* RedirectionVoiceFallback */ +static int hf_ngap_RedundantPDUSessionInformation_PDU = -1; /* RedundantPDUSessionInformation */ +static int hf_ngap_RedundantQosFlowIndicator_PDU = -1; /* RedundantQosFlowIndicator */ static int hf_ngap_RelativeAMFCapacity_PDU = -1; /* RelativeAMFCapacity */ static int hf_ngap_RepetitionPeriod_PDU = -1; /* RepetitionPeriod */ static int hf_ngap_ResetType_PDU = -1; /* ResetType */ +static int hf_ngap_RGLevelWirelineAccessCharacteristics_PDU = -1; /* RGLevelWirelineAccessCharacteristics */ static int hf_ngap_RoutingID_PDU = -1; /* RoutingID */ static int hf_ngap_RRCEstablishmentCause_PDU = -1; /* RRCEstablishmentCause */ static int hf_ngap_RRCInactiveTransitionReportRequest_PDU = -1; /* RRCInactiveTransitionReportRequest */ static int hf_ngap_RRCState_PDU = -1; /* RRCState */ +static int hf_ngap_RIMInformationTransfer_PDU = -1; /* RIMInformationTransfer */ static int hf_ngap_SCTP_TLAs_PDU = -1; /* SCTP_TLAs */ static int hf_ngap_SecondaryRATUsageInformation_PDU = -1; /* SecondaryRATUsageInformation */ static int hf_ngap_SecurityContext_PDU = -1; /* SecurityContext */ @@ -546,45 +752,67 @@ static int hf_ngap_SecurityKey_PDU = -1; /* SecurityKey */ static int hf_ngap_SecurityResult_PDU = -1; /* SecurityResult */ static int hf_ngap_SerialNumber_PDU = -1; /* SerialNumber */ static int hf_ngap_ServedGUAMIList_PDU = -1; /* ServedGUAMIList */ +static int hf_ngap_SgNB_UE_X2AP_ID_PDU = -1; /* SgNB_UE_X2AP_ID */ static int hf_ngap_SliceSupportList_PDU = -1; /* SliceSupportList */ static int hf_ngap_S_NSSAI_PDU = -1; /* S_NSSAI */ -static int hf_ngap_SONConfigurationTransfer_PDU = -1; /* SONConfigurationTransfer */ +static int hf_ngap_ngap_SONConfigurationTransfer_PDU = -1; /* SONConfigurationTransfer */ +static int hf_ngap_SONInformationReport_PDU = -1; /* SONInformationReport */ static int hf_ngap_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_PDU = -1; /* SourceNGRANNode_ToTargetNGRANNode_TransparentContainer */ static int hf_ngap_SourceToTarget_TransparentContainer_PDU = -1; /* SourceToTarget_TransparentContainer */ static int hf_ngap_SourceToTarget_AMFInformationReroute_PDU = -1; /* SourceToTarget_AMFInformationReroute */ +static int hf_ngap_SRVCCOperationPossible_PDU = -1; /* SRVCCOperationPossible */ static int hf_ngap_SupportedTAList_PDU = -1; /* SupportedTAList */ +static int hf_ngap_Suspend_Request_Indication_PDU = -1; /* Suspend_Request_Indication */ +static int hf_ngap_Suspend_Response_Indication_PDU = -1; /* Suspend_Response_Indication */ +static int hf_ngap_TAI_PDU = -1; /* TAI */ static int hf_ngap_TAIListForPaging_PDU = -1; /* TAIListForPaging */ static int hf_ngap_TAIListForRestart_PDU = -1; /* TAIListForRestart */ static int hf_ngap_TargetID_PDU = -1; /* TargetID */ static int hf_ngap_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_PDU = -1; /* TargetNGRANNode_ToSourceNGRANNode_TransparentContainer */ +static int hf_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU = -1; /* TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer */ +static int hf_ngap_TargetRNC_ID_PDU = -1; /* TargetRNC_ID */ static int hf_ngap_TargetToSource_TransparentContainer_PDU = -1; /* TargetToSource_TransparentContainer */ +static int hf_ngap_TargettoSource_Failure_TransparentContainer_PDU = -1; /* TargettoSource_Failure_TransparentContainer */ static int hf_ngap_TimeToWait_PDU = -1; /* TimeToWait */ static int hf_ngap_TNLAssociationList_PDU = -1; /* TNLAssociationList */ static int hf_ngap_TraceActivation_PDU = -1; /* TraceActivation */ static int hf_ngap_TrafficLoadReductionIndication_PDU = -1; /* TrafficLoadReductionIndication */ static int hf_ngap_TransportLayerAddress_PDU = -1; /* TransportLayerAddress */ +static int hf_ngap_TSCTrafficCharacteristics_PDU = -1; /* TSCTrafficCharacteristics */ static int hf_ngap_UEAggregateMaximumBitRate_PDU = -1; /* UEAggregateMaximumBitRate */ static int hf_ngap_UE_associatedLogicalNG_connectionList_PDU = -1; /* UE_associatedLogicalNG_connectionList */ +static int hf_ngap_UECapabilityInfoRequest_PDU = -1; /* UECapabilityInfoRequest */ static int hf_ngap_UEContextRequest_PDU = -1; /* UEContextRequest */ +static int hf_ngap_UE_DifferentiationInfo_PDU = -1; /* UE_DifferentiationInfo */ +static int hf_ngap_UEHistoryInformationFromTheUE_PDU = -1; /* UEHistoryInformationFromTheUE */ static int hf_ngap_UE_NGAP_IDs_PDU = -1; /* UE_NGAP_IDs */ static int hf_ngap_UEPagingIdentity_PDU = -1; /* UEPagingIdentity */ static int hf_ngap_UEPresenceInAreaOfInterestList_PDU = -1; /* UEPresenceInAreaOfInterestList */ static int hf_ngap_UERadioCapability_PDU = -1; /* UERadioCapability */ static int hf_ngap_UERadioCapabilityForPaging_PDU = -1; /* UERadioCapabilityForPaging */ +static int hf_ngap_UERadioCapabilityForPagingOfNB_IoT_PDU = -1; /* UERadioCapabilityForPagingOfNB_IoT */ +static int hf_ngap_UERadioCapabilityID_PDU = -1; /* UERadioCapabilityID */ static int hf_ngap_UERetentionInformation_PDU = -1; /* UERetentionInformation */ static int hf_ngap_UESecurityCapabilities_PDU = -1; /* UESecurityCapabilities */ +static int hf_ngap_UE_UP_CIoT_Support_PDU = -1; /* UE_UP_CIoT_Support */ +static int hf_ngap_UL_CP_SecurityInformation_PDU = -1; /* UL_CP_SecurityInformation */ static int hf_ngap_UL_NGU_UP_TNLModifyList_PDU = -1; /* UL_NGU_UP_TNLModifyList */ static int hf_ngap_UnavailableGUAMIList_PDU = -1; /* UnavailableGUAMIList */ static int hf_ngap_ULForwarding_PDU = -1; /* ULForwarding */ static int hf_ngap_UPTransportLayerInformation_PDU = -1; /* UPTransportLayerInformation */ static int hf_ngap_UPTransportLayerInformationList_PDU = -1; /* UPTransportLayerInformationList */ static int hf_ngap_UPTransportLayerInformationPairList_PDU = -1; /* UPTransportLayerInformationPairList */ +static int hf_ngap_URI_address_PDU = -1; /* URI_address */ static int hf_ngap_UserLocationInformation_PDU = -1; /* UserLocationInformation */ +static int hf_ngap_UserLocationInformationTNGF_PDU = -1; /* UserLocationInformationTNGF */ +static int hf_ngap_UserLocationInformationTWIF_PDU = -1; /* UserLocationInformationTWIF */ +static int hf_ngap_UserLocationInformationW_AGF_PDU = -1; /* UserLocationInformationW_AGF */ static int hf_ngap_WarningAreaCoordinates_PDU = -1; /* WarningAreaCoordinates */ static int hf_ngap_WarningAreaList_PDU = -1; /* WarningAreaList */ static int hf_ngap_WarningMessageContents_PDU = -1; /* WarningMessageContents */ static int hf_ngap_WarningSecurityInfo_PDU = -1; /* WarningSecurityInfo */ static int hf_ngap_WarningType_PDU = -1; /* WarningType */ +static int hf_ngap_WUS_Assistance_Information_PDU = -1; /* WUS_Assistance_Information */ static int hf_ngap_PDUSessionResourceSetupRequest_PDU = -1; /* PDUSessionResourceSetupRequest */ static int hf_ngap_PDUSessionResourceSetupResponse_PDU = -1; /* PDUSessionResourceSetupResponse */ static int hf_ngap_PDUSessionResourceReleaseCommand_PDU = -1; /* PDUSessionResourceReleaseCommand */ @@ -600,10 +828,19 @@ static int hf_ngap_InitialContextSetupFailure_PDU = -1; /* InitialContextSetupF static int hf_ngap_UEContextReleaseRequest_PDU = -1; /* UEContextReleaseRequest */ static int hf_ngap_UEContextReleaseCommand_PDU = -1; /* UEContextReleaseCommand */ static int hf_ngap_UEContextReleaseComplete_PDU = -1; /* UEContextReleaseComplete */ +static int hf_ngap_UEContextResumeRequest_PDU = -1; /* UEContextResumeRequest */ +static int hf_ngap_UEContextResumeResponse_PDU = -1; /* UEContextResumeResponse */ +static int hf_ngap_UEContextResumeFailure_PDU = -1; /* UEContextResumeFailure */ +static int hf_ngap_UEContextSuspendRequest_PDU = -1; /* UEContextSuspendRequest */ +static int hf_ngap_UEContextSuspendResponse_PDU = -1; /* UEContextSuspendResponse */ +static int hf_ngap_UEContextSuspendFailure_PDU = -1; /* UEContextSuspendFailure */ static int hf_ngap_UEContextModificationRequest_PDU = -1; /* UEContextModificationRequest */ static int hf_ngap_UEContextModificationResponse_PDU = -1; /* UEContextModificationResponse */ static int hf_ngap_UEContextModificationFailure_PDU = -1; /* UEContextModificationFailure */ static int hf_ngap_RRCInactiveTransitionReport_PDU = -1; /* RRCInactiveTransitionReport */ +static int hf_ngap_RetrieveUEInformation_PDU = -1; /* RetrieveUEInformation */ +static int hf_ngap_UEInformationTransfer_PDU = -1; /* UEInformationTransfer */ +static int hf_ngap_RANCPRelocationIndication_PDU = -1; /* RANCPRelocationIndication */ static int hf_ngap_HandoverRequired_PDU = -1; /* HandoverRequired */ static int hf_ngap_HandoverCommand_PDU = -1; /* HandoverCommand */ static int hf_ngap_HandoverPreparationFailure_PDU = -1; /* HandoverPreparationFailure */ @@ -616,12 +853,18 @@ static int hf_ngap_PathSwitchRequestAcknowledge_PDU = -1; /* PathSwitchRequestA static int hf_ngap_PathSwitchRequestFailure_PDU = -1; /* PathSwitchRequestFailure */ static int hf_ngap_HandoverCancel_PDU = -1; /* HandoverCancel */ static int hf_ngap_HandoverCancelAcknowledge_PDU = -1; /* HandoverCancelAcknowledge */ +static int hf_ngap_HandoverSuccess_PDU = -1; /* HandoverSuccess */ +static int hf_ngap_UplinkRANEarlyStatusTransfer_PDU = -1; /* UplinkRANEarlyStatusTransfer */ +static int hf_ngap_DownlinkRANEarlyStatusTransfer_PDU = -1; /* DownlinkRANEarlyStatusTransfer */ static int hf_ngap_UplinkRANStatusTransfer_PDU = -1; /* UplinkRANStatusTransfer */ static int hf_ngap_DownlinkRANStatusTransfer_PDU = -1; /* DownlinkRANStatusTransfer */ static int hf_ngap_Paging_PDU = -1; /* Paging */ static int hf_ngap_InitialUEMessage_PDU = -1; /* InitialUEMessage */ static int hf_ngap_DownlinkNASTransport_PDU = -1; /* DownlinkNASTransport */ static int hf_ngap_UplinkNASTransport_PDU = -1; /* UplinkNASTransport */ +static int hf_ngap_W_AGFIdentityInformation_PDU = -1; /* W_AGFIdentityInformation */ +static int hf_ngap_TNGFIdentityInformation_PDU = -1; /* TNGFIdentityInformation */ +static int hf_ngap_TWIFIdentityInformation_PDU = -1; /* TWIFIdentityInformation */ static int hf_ngap_NASNonDeliveryIndication_PDU = -1; /* NASNonDeliveryIndication */ static int hf_ngap_RerouteNASRequest_PDU = -1; /* RerouteNASRequest */ static int hf_ngap_NGAP_Message_PDU = -1; /* NGAP_Message */ @@ -665,9 +908,18 @@ static int hf_ngap_UERadioCapabilityCheckRequest_PDU = -1; /* UERadioCapability static int hf_ngap_UERadioCapabilityCheckResponse_PDU = -1; /* UERadioCapabilityCheckResponse */ static int hf_ngap_PrivateMessage_PDU = -1; /* PrivateMessage */ static int hf_ngap_SecondaryRATDataUsageReport_PDU = -1; /* SecondaryRATDataUsageReport */ +static int hf_ngap_UplinkRIMInformationTransfer_PDU = -1; /* UplinkRIMInformationTransfer */ +static int hf_ngap_DownlinkRIMInformationTransfer_PDU = -1; /* DownlinkRIMInformationTransfer */ +static int hf_ngap_ConnectionEstablishmentIndication_PDU = -1; /* ConnectionEstablishmentIndication */ +static int hf_ngap_UERadioCapabilityIDMappingRequest_PDU = -1; /* UERadioCapabilityIDMappingRequest */ +static int hf_ngap_UERadioCapabilityIDMappingResponse_PDU = -1; /* UERadioCapabilityIDMappingResponse */ +static int hf_ngap_AMFCPRelocationIndication_PDU = -1; /* AMFCPRelocationIndication */ static int hf_ngap_NGAP_PDU_PDU = -1; /* NGAP_PDU */ static int hf_ngap_PDUSessionResourceModifyIndicationUnsuccessfulTransfer_PDU = -1; /* PDUSessionResourceModifyIndicationUnsuccessfulTransfer */ +static int hf_ngap_UEContextResumeRequestTransfer_PDU = -1; /* UEContextResumeRequestTransfer */ +static int hf_ngap_UEContextResumeResponseTransfer_PDU = -1; /* UEContextResumeResponseTransfer */ static int hf_ngap_SecondaryRATDataUsageReportTransfer_PDU = -1; /* SecondaryRATDataUsageReportTransfer */ +static int hf_ngap_UEContextSuspendRequestTransfer_PDU = -1; /* UEContextSuspendRequestTransfer */ static int hf_ngap_local = -1; /* INTEGER_0_65535 */ static int hf_ngap_global = -1; /* OBJECT_IDENTIFIER */ static int hf_ngap_ProtocolIE_Container_item = -1; /* ProtocolIE_Field */ @@ -688,9 +940,20 @@ static int hf_ngap_iE_Extensions = -1; /* ProtocolExtensionContainer static int hf_ngap_priorityLevelARP = -1; /* PriorityLevelARP */ static int hf_ngap_pre_emptionCapability = -1; /* Pre_emptionCapability */ static int hf_ngap_pre_emptionVulnerability = -1; /* Pre_emptionVulnerability */ +static int hf_ngap_Allowed_CAG_List_per_PLMN_item = -1; /* CAG_ID */ static int hf_ngap_AllowedNSSAI_item = -1; /* AllowedNSSAI_Item */ static int hf_ngap_s_NSSAI = -1; /* S_NSSAI */ +static int hf_ngap_Allowed_PNI_NPN_List_item = -1; /* Allowed_PNI_NPN_Item */ +static int hf_ngap_pLMNIdentity = -1; /* PLMNIdentity */ +static int hf_ngap_pNI_NPN_restricted = -1; /* T_pNI_NPN_restricted */ +static int hf_ngap_allowed_CAG_List_per_PLMN = -1; /* Allowed_CAG_List_per_PLMN */ static int hf_ngap_AllowedTACs_item = -1; /* TAC */ +static int hf_ngap_AlternativeQoSParaSetList_item = -1; /* AlternativeQoSParaSetItem */ +static int hf_ngap_alternativeQoSParaSetIndex = -1; /* AlternativeQoSParaSetIndex */ +static int hf_ngap_guaranteedFlowBitRateDL = -1; /* BitRate */ +static int hf_ngap_guaranteedFlowBitRateUL = -1; /* BitRate */ +static int hf_ngap_packetDelayBudget = -1; /* PacketDelayBudget */ +static int hf_ngap_packetErrorRate = -1; /* PacketErrorRate */ static int hf_ngap_globalRANNodeID = -1; /* GlobalRANNodeID */ static int hf_ngap_tAI = -1; /* TAI */ static int hf_ngap_choice_Extensions = -1; /* ProtocolIE_SingleContainer */ @@ -717,6 +980,14 @@ static int hf_ngap_recommendedCellsForPaging = -1; /* RecommendedCellsForPaging static int hf_ngap_AssociatedQosFlowList_item = -1; /* AssociatedQosFlowItem */ static int hf_ngap_qosFlowIdentifier = -1; /* QosFlowIdentifier */ static int hf_ngap_qosFlowMappingIndication = -1; /* T_qosFlowMappingIndication */ +static int hf_ngap_cellBased = -1; /* CellBasedMDT_NR */ +static int hf_ngap_tABased = -1; /* TABasedMDT */ +static int hf_ngap_pLMNWide = -1; /* NULL */ +static int hf_ngap_tAIBased = -1; /* TAIBasedMDT */ +static int hf_ngap_cellBased_01 = -1; /* CellBasedMDT_EUTRA */ +static int hf_ngap_AreaScopeOfNeighCellsList_item = -1; /* AreaScopeOfNeighCellsItem */ +static int hf_ngap_nrFrequencyInfo = -1; /* NRFrequencyInfo */ +static int hf_ngap_pciListForMDT = -1; /* PCIListForMDT */ static int hf_ngap_cellIDCancelledEUTRA = -1; /* CellIDCancelledEUTRA */ static int hf_ngap_tAICancelledEUTRA = -1; /* TAICancelledEUTRA */ static int hf_ngap_emergencyAreaIDCancelledEUTRA = -1; /* EmergencyAreaIDCancelledEUTRA */ @@ -730,8 +1001,11 @@ static int hf_ngap_cellIDBroadcastNR = -1; /* CellIDBroadcastNR */ static int hf_ngap_tAIBroadcastNR = -1; /* TAIBroadcastNR */ static int hf_ngap_emergencyAreaIDBroadcastNR = -1; /* EmergencyAreaIDBroadcastNR */ static int hf_ngap_BroadcastPLMNList_item = -1; /* BroadcastPLMNItem */ -static int hf_ngap_pLMNIdentity = -1; /* PLMNIdentity */ static int hf_ngap_tAISliceSupportList = -1; /* SliceSupportList */ +static int hf_ngap_bluetoothMeasConfig = -1; /* BluetoothMeasConfig */ +static int hf_ngap_bluetoothMeasConfigNameList = -1; /* BluetoothMeasConfigNameList */ +static int hf_ngap_bt_rssi = -1; /* T_bt_rssi */ +static int hf_ngap_BluetoothMeasConfigNameList_item = -1; /* BluetoothName */ static int hf_ngap_CancelledCellsInEAI_EUTRA_item = -1; /* CancelledCellsInEAI_EUTRA_Item */ static int hf_ngap_eUTRA_CGI = -1; /* EUTRA_CGI */ static int hf_ngap_numberOfBroadcasts = -1; /* NumberOfBroadcasts */ @@ -739,11 +1013,19 @@ static int hf_ngap_CancelledCellsInEAI_NR_item = -1; /* CancelledCellsInEAI_NR_ static int hf_ngap_nR_CGI = -1; /* NR_CGI */ static int hf_ngap_CancelledCellsInTAI_EUTRA_item = -1; /* CancelledCellsInTAI_EUTRA_Item */ static int hf_ngap_CancelledCellsInTAI_NR_item = -1; /* CancelledCellsInTAI_NR_Item */ +static int hf_ngap_CandidateCellList_item = -1; /* CandidateCell_Item */ +static int hf_ngap_candidateCGI = -1; /* CandidateCellID */ +static int hf_ngap_candidatePCI = -1; /* CandidatePCI */ +static int hf_ngap_candidateCellID = -1; /* NR_CGI */ +static int hf_ngap_candidatePCI_01 = -1; /* INTEGER_0_1007 */ +static int hf_ngap_candidateNRARFCN = -1; /* INTEGER_0_3279165 */ static int hf_ngap_radioNetwork = -1; /* CauseRadioNetwork */ static int hf_ngap_transport = -1; /* CauseTransport */ static int hf_ngap_nas = -1; /* CauseNas */ static int hf_ngap_protocol = -1; /* CauseProtocol */ static int hf_ngap_misc = -1; /* CauseMisc */ +static int hf_ngap_cellCAGList = -1; /* CellCAGList */ +static int hf_ngap_CellCAGList_item = -1; /* CAG_ID */ static int hf_ngap_CellIDBroadcastEUTRA_item = -1; /* CellIDBroadcastEUTRA_Item */ static int hf_ngap_CellIDBroadcastNR_item = -1; /* CellIDBroadcastNR_Item */ static int hf_ngap_CellIDCancelledEUTRA_item = -1; /* CellIDCancelledEUTRA_Item */ @@ -777,14 +1059,25 @@ static int hf_ngap_CriticalityDiagnostics_IE_List_item = -1; /* CriticalityDiag static int hf_ngap_iECriticality = -1; /* Criticality */ static int hf_ngap_iE_ID = -1; /* ProtocolIE_ID */ static int hf_ngap_typeOfError = -1; /* TypeOfError */ +static int hf_ngap_cellIdListforMDT = -1; /* CellIdListforMDT_NR */ +static int hf_ngap_CellIdListforMDT_NR_item = -1; /* NR_CGI */ +static int hf_ngap_cellIdListforMDT_01 = -1; /* CellIdListforMDT_EUTRA */ +static int hf_ngap_CellIdListforMDT_EUTRA_item = -1; /* EUTRA_CGI */ static int hf_ngap_DataForwardingResponseDRBList_item = -1; /* DataForwardingResponseDRBItem */ static int hf_ngap_dRB_ID = -1; /* DRB_ID */ static int hf_ngap_dLForwardingUP_TNLInformation = -1; /* UPTransportLayerInformation */ static int hf_ngap_uLForwardingUP_TNLInformation = -1; /* UPTransportLayerInformation */ +static int hf_ngap_dAPSIndicator = -1; /* T_dAPSIndicator */ +static int hf_ngap_DAPSResponseInfoList_item = -1; /* DAPSResponseInfoItem */ +static int hf_ngap_dAPSResponseInfo = -1; /* DAPSResponseInfo */ +static int hf_ngap_iE_Extension = -1; /* ProtocolExtensionContainer */ +static int hf_ngap_dapsresponseindicator = -1; /* T_dapsresponseindicator */ +static int hf_ngap_DataForwardingResponseERABList_item = -1; /* DataForwardingResponseERABListItem */ +static int hf_ngap_e_RAB_ID = -1; /* E_RAB_ID */ +static int hf_ngap_dl_NAS_MAC = -1; /* DL_NAS_MAC */ static int hf_ngap_DRBsSubjectToStatusTransferList_item = -1; /* DRBsSubjectToStatusTransferItem */ static int hf_ngap_dRBStatusUL = -1; /* DRBStatusUL */ static int hf_ngap_dRBStatusDL = -1; /* DRBStatusDL */ -static int hf_ngap_iE_Extension = -1; /* ProtocolExtensionContainer */ static int hf_ngap_dRBStatusDL12 = -1; /* DRBStatusDL12 */ static int hf_ngap_dRBStatusDL18 = -1; /* DRBStatusDL18 */ static int hf_ngap_dL_COUNTValue = -1; /* COUNTValueForPDCP_SN12 */ @@ -798,12 +1091,15 @@ static int hf_ngap_receiveStatusOfUL_PDCP_SDUs_01 = -1; /* BIT_STRING_SIZE_1_13 static int hf_ngap_DRBsToQosFlowsMappingList_item = -1; /* DRBsToQosFlowsMappingItem */ static int hf_ngap_associatedQosFlowList = -1; /* AssociatedQosFlowList */ static int hf_ngap_priorityLevelQos = -1; /* PriorityLevelQos */ -static int hf_ngap_packetDelayBudget = -1; /* PacketDelayBudget */ -static int hf_ngap_packetErrorRate = -1; /* PacketErrorRate */ static int hf_ngap_fiveQI = -1; /* FiveQI */ static int hf_ngap_delayCritical = -1; /* DelayCritical */ static int hf_ngap_averagingWindow = -1; /* AveragingWindow */ static int hf_ngap_maximumDataBurstVolume = -1; /* MaximumDataBurstVolume */ +static int hf_ngap_procedureStage = -1; /* ProcedureStageChoice */ +static int hf_ngap_first_dl_count = -1; /* FirstDLCount */ +static int hf_ngap_dRBsSubjectToEarlyStatusTransfer = -1; /* DRBsSubjectToEarlyStatusTransfer_List */ +static int hf_ngap_DRBsSubjectToEarlyStatusTransfer_List_item = -1; /* DRBsSubjectToEarlyStatusTransfer_Item */ +static int hf_ngap_firstDLCOUNT = -1; /* DRBStatusDL */ static int hf_ngap_EmergencyAreaIDBroadcastEUTRA_item = -1; /* EmergencyAreaIDBroadcastEUTRA_Item */ static int hf_ngap_emergencyAreaID = -1; /* EmergencyAreaID */ static int hf_ngap_completedCellsInEAI_EUTRA = -1; /* CompletedCellsInEAI_EUTRA */ @@ -817,11 +1113,14 @@ static int hf_ngap_EmergencyAreaIDList_item = -1; /* EmergencyAreaID */ static int hf_ngap_EmergencyAreaIDListForRestart_item = -1; /* EmergencyAreaID */ static int hf_ngap_emergencyFallbackRequestIndicator = -1; /* EmergencyFallbackRequestIndicator */ static int hf_ngap_emergencyServiceTargetCN = -1; /* EmergencyServiceTargetCN */ +static int hf_ngap_macroENB_ID = -1; /* BIT_STRING_SIZE_20 */ +static int hf_ngap_homeENB_ID = -1; /* BIT_STRING_SIZE_28 */ +static int hf_ngap_short_macroENB_ID = -1; /* BIT_STRING_SIZE_18 */ +static int hf_ngap_long_macroENB_ID = -1; /* BIT_STRING_SIZE_21 */ static int hf_ngap_portNumber = -1; /* PortNumber */ static int hf_ngap_EquivalentPLMNs_item = -1; /* PLMNIdentity */ static int hf_ngap_ePS_TAC = -1; /* EPS_TAC */ static int hf_ngap_E_RABInformationList_item = -1; /* E_RABInformationItem */ -static int hf_ngap_e_RAB_ID = -1; /* E_RAB_ID */ static int hf_ngap_dLForwarding = -1; /* DLForwarding */ static int hf_ngap_eUTRACellIdentity = -1; /* EUTRACellIdentity */ static int hf_ngap_EUTRA_CGIList_item = -1; /* EUTRA_CGI */ @@ -835,25 +1134,45 @@ static int hf_ngap_expectedUEMobility = -1; /* ExpectedUEMobility */ static int hf_ngap_expectedUEMovingTrajectory = -1; /* ExpectedUEMovingTrajectory */ static int hf_ngap_ExpectedUEMovingTrajectory_item = -1; /* ExpectedUEMovingTrajectoryItem */ static int hf_ngap_timeStayedInCell = -1; /* INTEGER_0_4095 */ +static int hf_ngap_primaryRATRestriction = -1; /* T_primaryRATRestriction */ +static int hf_ngap_secondaryRATRestriction = -1; /* T_secondaryRATRestriction */ +static int hf_ngap_ExtendedSliceSupportList_item = -1; /* SliceSupportItem */ +static int hf_ngap_outOfCoverage = -1; /* T_outOfCoverage */ +static int hf_ngap_eventL1LoggedMDTConfig = -1; /* EventL1LoggedMDTConfig */ +static int hf_ngap_l1Threshold = -1; /* MeasurementThresholdL1LoggedMDT */ +static int hf_ngap_hysteresis = -1; /* Hysteresis */ +static int hf_ngap_timeToTrigger = -1; /* TimeToTrigger */ +static int hf_ngap_threshold_RSRP = -1; /* Threshold_RSRP */ +static int hf_ngap_threshold_RSRQ = -1; /* Threshold_RSRQ */ +static int hf_ngap_uERLFReportContainer = -1; /* UERLFReportContainer */ static int hf_ngap_aMFSetID = -1; /* AMFSetID */ static int hf_ngap_aMFPointer = -1; /* AMFPointer */ static int hf_ngap_fiveG_TMSI = -1; /* FiveG_TMSI */ static int hf_ngap_ForbiddenAreaInformation_item = -1; /* ForbiddenAreaInformation_Item */ static int hf_ngap_forbiddenTACs = -1; /* ForbiddenTACs */ static int hf_ngap_ForbiddenTACs_item = -1; /* TAC */ +static int hf_ngap_sourceeNBID = -1; /* IntersystemSONeNBID */ +static int hf_ngap_targetNGRANnodeID = -1; /* IntersystemSONNGRANnodeID */ +static int hf_ngap_sourceNGRANnodeID = -1; /* IntersystemSONNGRANnodeID */ +static int hf_ngap_targeteNBID = -1; /* IntersystemSONeNBID */ static int hf_ngap_maximumFlowBitRateDL = -1; /* BitRate */ static int hf_ngap_maximumFlowBitRateUL = -1; /* BitRate */ -static int hf_ngap_guaranteedFlowBitRateDL = -1; /* BitRate */ -static int hf_ngap_guaranteedFlowBitRateUL = -1; /* BitRate */ static int hf_ngap_notificationControl = -1; /* NotificationControl */ static int hf_ngap_maximumPacketLossRateDL = -1; /* PacketLossRate */ static int hf_ngap_maximumPacketLossRateUL = -1; /* PacketLossRate */ +static int hf_ngap_pLMNidentity = -1; /* PLMNIdentity */ +static int hf_ngap_eNB_ID = -1; /* ENB_ID */ static int hf_ngap_gNB_ID = -1; /* GNB_ID */ static int hf_ngap_n3IWF_ID = -1; /* N3IWF_ID */ +static int hf_ngap_globalLineIdentity = -1; /* GlobalLineIdentity */ +static int hf_ngap_lineType = -1; /* LineType */ static int hf_ngap_ngENB_ID = -1; /* NgENB_ID */ static int hf_ngap_globalGNB_ID = -1; /* GlobalGNB_ID */ static int hf_ngap_globalNgENB_ID = -1; /* GlobalNgENB_ID */ static int hf_ngap_globalN3IWF_ID = -1; /* GlobalN3IWF_ID */ +static int hf_ngap_tNGF_ID = -1; /* TNGF_ID */ +static int hf_ngap_tWIF_ID = -1; /* TWIF_ID */ +static int hf_ngap_w_AGF_ID = -1; /* W_AGF_ID */ static int hf_ngap_gNB_ID_01 = -1; /* BIT_STRING_SIZE_22_32 */ static int hf_ngap_transportLayerAddress = -1; /* TransportLayerAddress */ static int hf_ngap_gTP_TEID = -1; /* GTP_TEID */ @@ -867,7 +1186,43 @@ static int hf_ngap_qosFlowSetupResponseList = -1; /* QosFlowListWithDataForward static int hf_ngap_qosFlowFailedToSetupList = -1; /* QosFlowListWithCause */ static int hf_ngap_directForwardingPathAvailability = -1; /* DirectForwardingPathAvailability */ static int hf_ngap_criticalityDiagnostics = -1; /* CriticalityDiagnostics */ +static int hf_ngap_handoverReportType = -1; /* T_handoverReportType */ +static int hf_ngap_handoverCause = -1; /* Cause */ +static int hf_ngap_sourcecellCGI = -1; /* NGRAN_CGI */ +static int hf_ngap_targetcellCGI = -1; /* NGRAN_CGI */ +static int hf_ngap_reestablishmentcellCGI = -1; /* NGRAN_CGI */ +static int hf_ngap_sourcecellC_RNTI = -1; /* BIT_STRING_SIZE_16 */ +static int hf_ngap_targetcellinE_UTRAN = -1; /* EUTRA_CGI */ +static int hf_ngap_mobilityInformation = -1; /* MobilityInformation */ static int hf_ngap_recommendRANNodesForPaging = -1; /* RecommendedRANNodesForPaging */ +static int hf_ngap_measurementsToActivate = -1; /* MeasurementsToActivate */ +static int hf_ngap_m1Configuration = -1; /* M1Configuration */ +static int hf_ngap_m4Configuration = -1; /* M4Configuration */ +static int hf_ngap_m5Configuration = -1; /* M5Configuration */ +static int hf_ngap_m6Configuration = -1; /* M6Configuration */ +static int hf_ngap_m7Configuration = -1; /* M7Configuration */ +static int hf_ngap_bluetoothMeasurementConfiguration = -1; /* BluetoothMeasurementConfiguration */ +static int hf_ngap_wLANMeasurementConfiguration = -1; /* WLANMeasurementConfiguration */ +static int hf_ngap_mDT_Location_Info = -1; /* MDT_Location_Info */ +static int hf_ngap_sensorMeasurementConfiguration = -1; /* SensorMeasurementConfiguration */ +static int hf_ngap_transferType = -1; /* IntersystemSONTransferType */ +static int hf_ngap_intersystemSONInformation = -1; /* IntersystemSONInformation */ +static int hf_ngap_fromEUTRANtoNGRAN = -1; /* FromEUTRANtoNGRAN */ +static int hf_ngap_fromNGRANtoEUTRAN = -1; /* FromNGRANtoEUTRAN */ +static int hf_ngap_globaleNBID = -1; /* GlobalENB_ID */ +static int hf_ngap_selectedEPSTAI = -1; /* EPS_TAI */ +static int hf_ngap_selectedTAI = -1; /* TAI */ +static int hf_ngap_intersystemSONInformationReport = -1; /* IntersystemSONInformationReport */ +static int hf_ngap_hOReportInformation = -1; /* InterSystemHOReport */ +static int hf_ngap_failureIndicationInformation = -1; /* InterSystemFailureIndication */ +static int hf_ngap_handoverReportType_01 = -1; /* InterSystemHandoverReportType */ +static int hf_ngap_tooearlyIntersystemHO = -1; /* TooearlyIntersystemHO */ +static int hf_ngap_intersystemUnnecessaryHO = -1; /* IntersystemUnnecessaryHO */ +static int hf_ngap_sourcecellID = -1; /* EUTRA_CGI */ +static int hf_ngap_failurecellID = -1; /* NGRAN_CGI */ +static int hf_ngap_earlyIRATHO = -1; /* T_earlyIRATHO */ +static int hf_ngap_candidateCellList = -1; /* CandidateCellList */ +static int hf_ngap_lAC = -1; /* LAC */ static int hf_ngap_nGRANCell = -1; /* LastVisitedNGRANCellInformation */ static int hf_ngap_eUTRANCell = -1; /* LastVisitedEUTRANCellInformation */ static int hf_ngap_uTRANCell = -1; /* LastVisitedUTRANCellInformation */ @@ -882,12 +1237,49 @@ static int hf_ngap_eventType = -1; /* EventType */ static int hf_ngap_reportArea = -1; /* ReportArea */ static int hf_ngap_areaOfInterestList = -1; /* AreaOfInterestList */ static int hf_ngap_locationReportingReferenceIDToBeCancelled = -1; /* LocationReportingReferenceID */ +static int hf_ngap_loggingInterval = -1; /* LoggingInterval */ +static int hf_ngap_loggingDuration = -1; /* LoggingDuration */ +static int hf_ngap_loggedMDTTrigger = -1; /* LoggedMDTTrigger */ +static int hf_ngap_areaScopeOfNeighCellsList = -1; /* AreaScopeOfNeighCellsList */ +static int hf_ngap_periodical = -1; /* NULL */ +static int hf_ngap_eventTrigger = -1; /* EventTrigger */ +static int hf_ngap_vehicleUE = -1; /* VehicleUE */ +static int hf_ngap_pedestrianUE = -1; /* PedestrianUE */ +static int hf_ngap_uESidelinkAggregateMaximumBitRate = -1; /* BitRate */ static int hf_ngap_servingPLMN = -1; /* PLMNIdentity */ static int hf_ngap_equivalentPLMNs = -1; /* EquivalentPLMNs */ static int hf_ngap_rATRestrictions = -1; /* RATRestrictions */ static int hf_ngap_forbiddenAreaInformation = -1; /* ForbiddenAreaInformation */ static int hf_ngap_serviceAreaInformation = -1; /* ServiceAreaInformation */ +static int hf_ngap_MDTPLMNList_item = -1; /* PLMNIdentity */ +static int hf_ngap_mdt_Config_NR = -1; /* MDT_Configuration_NR */ +static int hf_ngap_mdt_Config_EUTRA = -1; /* MDT_Configuration_EUTRA */ +static int hf_ngap_mdt_Activation = -1; /* MDT_Activation */ +static int hf_ngap_areaScopeOfMDT = -1; /* AreaScopeOfMDT_NR */ +static int hf_ngap_mDTModeNr = -1; /* MDTModeNr */ +static int hf_ngap_signallingBasedMDTPLMNList = -1; /* MDTPLMNList */ +static int hf_ngap_areaScopeOfMDT_01 = -1; /* AreaScopeOfMDT_EUTRA */ +static int hf_ngap_mDTMode = -1; /* MDTModeEutra */ +static int hf_ngap_immediateMDTNr = -1; /* ImmediateMDTNr */ +static int hf_ngap_loggedMDTNr = -1; /* LoggedMDTNr */ +static int hf_ngap_m1reportingTrigger = -1; /* M1ReportingTrigger */ +static int hf_ngap_m1thresholdEventA2 = -1; /* M1ThresholdEventA2 */ +static int hf_ngap_m1periodicReporting = -1; /* M1PeriodicReporting */ +static int hf_ngap_threshold_SINR = -1; /* Threshold_SINR */ +static int hf_ngap_reportInterval = -1; /* ReportIntervalMDT */ +static int hf_ngap_reportAmount = -1; /* ReportAmountMDT */ +static int hf_ngap_m4period = -1; /* M4period */ +static int hf_ngap_m4_links_to_log = -1; /* Links_to_log */ +static int hf_ngap_m5period = -1; /* M5period */ +static int hf_ngap_m5_links_to_log = -1; /* Links_to_log */ +static int hf_ngap_m6report_Interval = -1; /* M6report_Interval */ +static int hf_ngap_m6_links_to_log = -1; /* Links_to_log */ +static int hf_ngap_m7period = -1; /* M7period */ +static int hf_ngap_m7_links_to_log = -1; /* Links_to_log */ +static int hf_ngap_mDT_Location_Infoormation = -1; /* MDT_Location_Information */ static int hf_ngap_n3IWF_ID_01 = -1; /* BIT_STRING_SIZE_16 */ +static int hf_ngap_nB_IoT_Paging_eDRXCycle = -1; /* NB_IoT_Paging_eDRXCycle */ +static int hf_ngap_nB_IoT_Paging_TimeWindow = -1; /* NB_IoT_Paging_TimeWindow */ static int hf_ngap_macroNgENB_ID = -1; /* BIT_STRING_SIZE_20 */ static int hf_ngap_shortMacroNgENB_ID = -1; /* BIT_STRING_SIZE_18 */ static int hf_ngap_longMacroNgENB_ID = -1; /* BIT_STRING_SIZE_21 */ @@ -895,9 +1287,18 @@ static int hf_ngap_NGRAN_TNLAssociationToRemoveList_item = -1; /* NGRAN_TNLAsso static int hf_ngap_tNLAssociationTransportLayerAddress = -1; /* CPTransportLayerInformation */ static int hf_ngap_tNLAssociationTransportLayerAddressAMF = -1; /* CPTransportLayerInformation */ static int hf_ngap_NotAllowedTACs_item = -1; /* TAC */ +static int hf_ngap_pNI_NPN_Access_Information = -1; /* CellCAGList */ +static int hf_ngap_sNPN_MobilityInformation = -1; /* SNPN_MobilityInformation */ +static int hf_ngap_pNI_NPN_MobilityInformation = -1; /* PNI_NPN_MobilityInformation */ +static int hf_ngap_pNI_NPN_PagingAssistance = -1; /* Allowed_PNI_NPN_List */ +static int hf_ngap_sNPN = -1; /* NID */ static int hf_ngap_nRCellIdentity = -1; /* NRCellIdentity */ static int hf_ngap_NR_CGIList_item = -1; /* NR_CGI */ static int hf_ngap_NR_CGIListForWarning_item = -1; /* NR_CGI */ +static int hf_ngap_NRFrequencyBand_List_item = -1; /* NRFrequencyBandItem */ +static int hf_ngap_nr_frequency_band = -1; /* NRFrequencyBand */ +static int hf_ngap_nrARFCN = -1; /* NRARFCN */ +static int hf_ngap_frequencyBand_List = -1; /* NRFrequencyBand_List */ static int hf_ngap_overloadAction = -1; /* OverloadAction */ static int hf_ngap_OverloadStartNSSAIList_item = -1; /* OverloadStartNSSAIItem */ static int hf_ngap_sliceOverloadList = -1; /* SliceOverloadList */ @@ -905,14 +1306,26 @@ static int hf_ngap_sliceOverloadResponse = -1; /* OverloadResponse */ static int hf_ngap_sliceTrafficLoadReductionIndication = -1; /* TrafficLoadReductionIndication */ static int hf_ngap_pERScalar = -1; /* INTEGER_0_9_ */ static int hf_ngap_pERExponent = -1; /* INTEGER_0_9_ */ +static int hf_ngap_coverageEnhancementLevel = -1; /* CoverageEnhancementLevel */ static int hf_ngap_pagingAttemptCount = -1; /* PagingAttemptCount */ static int hf_ngap_intendedNumberOfPagingAttempts = -1; /* IntendedNumberOfPagingAttempts */ static int hf_ngap_nextPagingAreaScope = -1; /* NextPagingAreaScope */ +static int hf_ngap_paging_eDRX_Cycle = -1; /* Paging_eDRX_Cycle */ +static int hf_ngap_paging_Time_Window = -1; /* Paging_Time_Window */ static int hf_ngap_uL_NGU_UP_TNLInformation = -1; /* UPTransportLayerInformation */ static int hf_ngap_securityIndication = -1; /* SecurityIndication */ static int hf_ngap_dL_NGU_TNLInformationReused = -1; /* DL_NGU_TNLInformationReused */ static int hf_ngap_userPlaneSecurityInformation = -1; /* UserPlaneSecurityInformation */ static int hf_ngap_qosFlowAcceptedList = -1; /* QosFlowAcceptedList */ +static int hf_ngap_pc5QoSFlowList = -1; /* PC5QoSFlowList */ +static int hf_ngap_pc5LinkAggregatedBitRates = -1; /* BitRate */ +static int hf_ngap_PC5QoSFlowList_item = -1; /* PC5QoSFlowItem */ +static int hf_ngap_pQI = -1; /* FiveQI */ +static int hf_ngap_pc5FlowBitRates = -1; /* PC5FlowBitRates */ +static int hf_ngap_range = -1; /* Range */ +static int hf_ngap_guaranteedFlowBitRate = -1; /* BitRate */ +static int hf_ngap_maximumFlowBitRate = -1; /* BitRate */ +static int hf_ngap_PCIListForMDT_item = -1; /* NR_PCI */ static int hf_ngap_pDUSessionAggregateMaximumBitRateDL = -1; /* BitRate */ static int hf_ngap_pDUSessionAggregateMaximumBitRateUL = -1; /* BitRate */ static int hf_ngap_PDUSessionResourceAdmittedList_item = -1; /* PDUSessionResourceAdmittedItem */ @@ -922,6 +1335,8 @@ static int hf_ngap_PDUSessionResourceFailedToModifyListModCfm_item = -1; /* PDU static int hf_ngap_pDUSessionResourceModifyIndicationUnsuccessfulTransfer = -1; /* T_pDUSessionResourceModifyIndicationUnsuccessfulTransfer */ static int hf_ngap_PDUSessionResourceFailedToModifyListModRes_item = -1; /* PDUSessionResourceFailedToModifyItemModRes */ static int hf_ngap_pDUSessionResourceModifyUnsuccessfulTransfer = -1; /* T_pDUSessionResourceModifyUnsuccessfulTransfer */ +static int hf_ngap_PDUSessionResourceFailedToResumeListRESReq_item = -1; /* PDUSessionResourceFailedToResumeItemRESReq */ +static int hf_ngap_PDUSessionResourceFailedToResumeListRESRes_item = -1; /* PDUSessionResourceFailedToResumeItemRESRes */ static int hf_ngap_PDUSessionResourceFailedToSetupListCxtFail_item = -1; /* PDUSessionResourceFailedToSetupItemCxtFail */ static int hf_ngap_pDUSessionResourceSetupUnsuccessfulTransfer = -1; /* T_pDUSessionResourceSetupUnsuccessfulTransfer */ static int hf_ngap_PDUSessionResourceFailedToSetupListCxtRes_item = -1; /* PDUSessionResourceFailedToSetupItemCxtRes */ @@ -971,6 +1386,10 @@ static int hf_ngap_PDUSessionResourceReleasedListPSFail_item = -1; /* PDUSessio static int hf_ngap_pathSwitchRequestUnsuccessfulTransfer_01 = -1; /* T_pathSwitchRequestUnsuccessfulTransfer_01 */ static int hf_ngap_PDUSessionResourceReleasedListRelRes_item = -1; /* PDUSessionResourceReleasedItemRelRes */ static int hf_ngap_pDUSessionResourceReleaseResponseTransfer = -1; /* T_pDUSessionResourceReleaseResponseTransfer */ +static int hf_ngap_PDUSessionResourceResumeListRESReq_item = -1; /* PDUSessionResourceResumeItemRESReq */ +static int hf_ngap_uEContextResumeRequestTransfer = -1; /* T_uEContextResumeRequestTransfer */ +static int hf_ngap_PDUSessionResourceResumeListRESRes_item = -1; /* PDUSessionResourceResumeItemRESRes */ +static int hf_ngap_uEContextResumeResponseTransfer = -1; /* T_uEContextResumeResponseTransfer */ static int hf_ngap_PDUSessionResourceSecondaryRATUsageList_item = -1; /* PDUSessionResourceSecondaryRATUsageItem */ static int hf_ngap_secondaryRATDataUsageReportTransfer = -1; /* T_secondaryRATDataUsageReportTransfer */ static int hf_ngap_PDUSessionResourceSetupListCxtReq_item = -1; /* PDUSessionResourceSetupItemCxtReq */ @@ -984,6 +1403,8 @@ static int hf_ngap_pDUSessionNAS_PDU = -1; /* NAS_PDU */ static int hf_ngap_pDUSessionResourceSetupRequestTransfer_01 = -1; /* T_pDUSessionResourceSetupRequestTransfer_01 */ static int hf_ngap_PDUSessionResourceSetupListSURes_item = -1; /* PDUSessionResourceSetupItemSURes */ static int hf_ngap_pDUSessionResourceSetupResponseTransfer_01 = -1; /* T_pDUSessionResourceSetupResponseTransfer_01 */ +static int hf_ngap_PDUSessionResourceSuspendListSUSReq_item = -1; /* PDUSessionResourceSuspendItemSUSReq */ +static int hf_ngap_uEContextSuspendRequestTransfer = -1; /* T_uEContextSuspendRequestTransfer */ static int hf_ngap_PDUSessionResourceSwitchedList_item = -1; /* PDUSessionResourceSwitchedItem */ static int hf_ngap_pathSwitchRequestAcknowledgeTransfer = -1; /* T_pathSwitchRequestAcknowledgeTransfer */ static int hf_ngap_PDUSessionResourceToBeSwitchedDLList_item = -1; /* PDUSessionResourceToBeSwitchedDLItem */ @@ -996,6 +1417,7 @@ static int hf_ngap_rATType = -1; /* T_rATType */ static int hf_ngap_pDUSessionTimedReportList = -1; /* VolumeTimedReportList */ static int hf_ngap_PLMNSupportList_item = -1; /* PLMNSupportItem */ static int hf_ngap_sliceSupportList = -1; /* SliceSupportList */ +static int hf_ngap_allowed_PNI_NPI_List = -1; /* Allowed_PNI_NPN_List */ static int hf_ngap_eUTRA_CGI_PWSFailedList = -1; /* EUTRA_CGIList */ static int hf_ngap_nR_CGI_PWSFailedList = -1; /* NR_CGIList */ static int hf_ngap_nonDynamic5QI = -1; /* NonDynamic5QIDescriptor */ @@ -1032,8 +1454,17 @@ static int hf_ngap_RecommendedCellList_item = -1; /* RecommendedCellItem */ static int hf_ngap_recommendedRANNodeList = -1; /* RecommendedRANNodeList */ static int hf_ngap_RecommendedRANNodeList_item = -1; /* RecommendedRANNodeItem */ static int hf_ngap_aMFPagingTarget = -1; /* AMFPagingTarget */ +static int hf_ngap_rSN = -1; /* RSN */ static int hf_ngap_nG_Interface = -1; /* ResetAll */ static int hf_ngap_partOfNG_Interface = -1; /* UE_associatedLogicalNG_connectionList */ +static int hf_ngap_targetRANNodeID = -1; /* TargetRANNodeID */ +static int hf_ngap_sourceRANNodeID = -1; /* SourceRANNodeID */ +static int hf_ngap_rIMInformation = -1; /* RIMInformation */ +static int hf_ngap_targetgNBSetID = -1; /* GNBSetID */ +static int hf_ngap_rIM_RSDetection = -1; /* T_rIM_RSDetection */ +static int hf_ngap_dayofWeek = -1; /* BIT_STRING_SIZE_7 */ +static int hf_ngap_timeofDayStart = -1; /* INTEGER_0_86399_ */ +static int hf_ngap_timeofDayEnd = -1; /* INTEGER_0_86399_ */ static int hf_ngap_SCTP_TLAs_item = -1; /* TransportLayerAddress */ static int hf_ngap_pDUSessionUsageReport = -1; /* PDUSessionUsageReport */ static int hf_ngap_qosFlowsUsageReportList = -1; /* QoSFlowsUsageReportList */ @@ -1045,6 +1476,12 @@ static int hf_ngap_confidentialityProtectionIndication = -1; /* Confidentiality static int hf_ngap_maximumIntegrityProtectedDataRate_UL = -1; /* MaximumIntegrityProtectedDataRate */ static int hf_ngap_integrityProtectionResult = -1; /* IntegrityProtectionResult */ static int hf_ngap_confidentialityProtectionResult = -1; /* ConfidentialityProtectionResult */ +static int hf_ngap_sensorMeasConfig = -1; /* SensorMeasConfig */ +static int hf_ngap_sensorMeasConfigName = -1; /* SensorMeasConfigName */ +static int hf_ngap_SensorMeasConfigName_item = -1; /* SensorNameConfig */ +static int hf_ngap_uncompensattedBarometericConfig = -1; /* T_uncompensattedBarometericConfig */ +static int hf_ngap_ueSpeedConfig = -1; /* T_ueSpeedConfig */ +static int hf_ngap_ueOrientationConfig = -1; /* T_ueOrientationConfig */ static int hf_ngap_ServedGUAMIList_item = -1; /* ServedGUAMIItem */ static int hf_ngap_gUAMI = -1; /* GUAMI */ static int hf_ngap_backupAMFName = -1; /* AMFName */ @@ -1053,21 +1490,21 @@ static int hf_ngap_allowedTACs = -1; /* AllowedTACs */ static int hf_ngap_notAllowedTACs = -1; /* NotAllowedTACs */ static int hf_ngap_SliceOverloadList_item = -1; /* SliceOverloadItem */ static int hf_ngap_SliceSupportList_item = -1; /* SliceSupportItem */ +static int hf_ngap_serving_NID = -1; /* NID */ static int hf_ngap_sST = -1; /* SST */ static int hf_ngap_sD = -1; /* SD */ -static int hf_ngap_targetRANNodeID = -1; /* TargetRANNodeID */ -static int hf_ngap_sourceRANNodeID = -1; /* SourceRANNodeID */ static int hf_ngap_sONInformation = -1; /* SONInformation */ static int hf_ngap_xnTNLConfigurationInfo = -1; /* XnTNLConfigurationInfo */ static int hf_ngap_sONInformationRequest = -1; /* SONInformationRequest */ static int hf_ngap_sONInformationReply = -1; /* SONInformationReply */ +static int hf_ngap_failureIndicationInformation_01 = -1; /* FailureIndication */ +static int hf_ngap_hOReportInformation_01 = -1; /* HOReport */ static int hf_ngap_rRCContainer = -1; /* RRCContainer */ static int hf_ngap_pDUSessionResourceInformationList = -1; /* PDUSessionResourceInformationList */ static int hf_ngap_e_RABInformationList = -1; /* E_RABInformationList */ static int hf_ngap_targetCell_ID = -1; /* NGRAN_CGI */ static int hf_ngap_indexToRFSP = -1; /* IndexToRFSP */ static int hf_ngap_uEHistoryInformation = -1; /* UEHistoryInformation */ -static int hf_ngap_selectedTAI = -1; /* TAI */ static int hf_ngap_configuredNSSAI = -1; /* ConfiguredNSSAI */ static int hf_ngap_rejectedNSSAIinPLMN = -1; /* RejectedNSSAIinPLMN */ static int hf_ngap_rejectedNSSAIinTA = -1; /* RejectedNSSAIinTA */ @@ -1089,18 +1526,41 @@ static int hf_ngap_TAIListForWarning_item = -1; /* TAI */ static int hf_ngap_globalENB_ID = -1; /* GlobalNgENB_ID */ static int hf_ngap_selected_EPS_TAI = -1; /* EPS_TAI */ static int hf_ngap_targeteNB_ID = -1; /* TargeteNB_ID */ +static int hf_ngap_cell_CAGInformation = -1; /* Cell_CAGInformation */ +static int hf_ngap_lAI = -1; /* LAI */ +static int hf_ngap_rNC_ID = -1; /* RNC_ID */ +static int hf_ngap_extendedRNC_ID = -1; /* ExtendedRNC_ID */ +static int hf_ngap_tNGF_ID_01 = -1; /* BIT_STRING_SIZE_32_ */ static int hf_ngap_TNLAssociationList_item = -1; /* TNLAssociationItem */ static int hf_ngap_tNLAssociationAddress = -1; /* CPTransportLayerInformation */ static int hf_ngap_nGRANTraceID = -1; /* NGRANTraceID */ static int hf_ngap_interfacesToTrace = -1; /* InterfacesToTrace */ static int hf_ngap_traceDepth = -1; /* TraceDepth */ static int hf_ngap_traceCollectionEntityIPAddress = -1; /* TransportLayerAddress */ +static int hf_ngap_tAIListforMDT = -1; /* TAIListforMDT */ +static int hf_ngap_TAIListforMDT_item = -1; /* TAI */ +static int hf_ngap_tAListforMDT = -1; /* TAListforMDT */ +static int hf_ngap_TAListforMDT_item = -1; /* TAC */ +static int hf_ngap_tWIF_ID_01 = -1; /* BIT_STRING_SIZE_32_ */ +static int hf_ngap_periodicity = -1; /* Periodicity */ +static int hf_ngap_burstArrivalTime = -1; /* BurstArrivalTime */ +static int hf_ngap_tSCAssistanceInformationDL = -1; /* TSCAssistanceInformation */ +static int hf_ngap_tSCAssistanceInformationUL = -1; /* TSCAssistanceInformation */ static int hf_ngap_uEAggregateMaximumBitRateDL = -1; /* BitRate */ static int hf_ngap_uEAggregateMaximumBitRateUL = -1; /* BitRate */ static int hf_ngap_UE_associatedLogicalNG_connectionList_item = -1; /* UE_associatedLogicalNG_connectionItem */ static int hf_ngap_aMF_UE_NGAP_ID = -1; /* AMF_UE_NGAP_ID */ static int hf_ngap_rAN_UE_NGAP_ID = -1; /* RAN_UE_NGAP_ID */ +static int hf_ngap_qosFlowFailedToResumeList = -1; /* QosFlowListWithCause */ +static int hf_ngap_suspendIndicator = -1; /* SuspendIndicator */ +static int hf_ngap_periodicCommunicationIndicator = -1; /* T_periodicCommunicationIndicator */ +static int hf_ngap_periodicTime = -1; /* INTEGER_1_3600_ */ +static int hf_ngap_scheduledCommunicationTime = -1; /* ScheduledCommunicationTime */ +static int hf_ngap_stationaryIndication = -1; /* T_stationaryIndication */ +static int hf_ngap_trafficProfile = -1; /* T_trafficProfile */ +static int hf_ngap_batteryIndication = -1; /* T_batteryIndication */ static int hf_ngap_UEHistoryInformation_item = -1; /* LastVisitedCellItem */ +static int hf_ngap_nR = -1; /* NRMobilityHistoryReport */ static int hf_ngap_indexLength10 = -1; /* BIT_STRING_SIZE_10 */ static int hf_ngap_uE_NGAP_ID_pair = -1; /* UE_NGAP_ID_pair */ static int hf_ngap_fiveG_S_TMSI = -1; /* FiveG_S_TMSI */ @@ -1108,10 +1568,14 @@ static int hf_ngap_UEPresenceInAreaOfInterestList_item = -1; /* UEPresenceInAre static int hf_ngap_uEPresence = -1; /* UEPresence */ static int hf_ngap_uERadioCapabilityForPagingOfNR = -1; /* UERadioCapabilityForPagingOfNR */ static int hf_ngap_uERadioCapabilityForPagingOfEUTRA = -1; /* UERadioCapabilityForPagingOfEUTRA */ +static int hf_ngap_nR_01 = -1; /* NRUERLFReportContainer */ +static int hf_ngap_lTE = -1; /* LTEUERLFReportContainer */ static int hf_ngap_nRencryptionAlgorithms = -1; /* NRencryptionAlgorithms */ static int hf_ngap_nRintegrityProtectionAlgorithms = -1; /* NRintegrityProtectionAlgorithms */ static int hf_ngap_eUTRAencryptionAlgorithms = -1; /* EUTRAencryptionAlgorithms */ static int hf_ngap_eUTRAintegrityProtectionAlgorithms = -1; /* EUTRAintegrityProtectionAlgorithms */ +static int hf_ngap_ul_NAS_MAC = -1; /* UL_NAS_MAC */ +static int hf_ngap_ul_NAS_Count = -1; /* UL_NAS_Count */ static int hf_ngap_UL_NGU_UP_TNLModifyList_item = -1; /* UL_NGU_UP_TNLModifyItem */ static int hf_ngap_UnavailableGUAMIList_item = -1; /* UnavailableGUAMIItem */ static int hf_ngap_timerApproachForGUAMIRemoval = -1; /* TimerApproachForGUAMIRemoval */ @@ -1124,15 +1588,26 @@ static int hf_ngap_userLocationInformationNR = -1; /* UserLocationInformationNR static int hf_ngap_userLocationInformationN3IWF = -1; /* UserLocationInformationN3IWF */ static int hf_ngap_timeStamp = -1; /* TimeStamp */ static int hf_ngap_iPAddress = -1; /* TransportLayerAddress */ +static int hf_ngap_tNAP_ID = -1; /* TNAP_ID */ +static int hf_ngap_tWAP_ID = -1; /* TWAP_ID */ +static int hf_ngap_globalLine_ID = -1; /* GlobalLine_ID */ +static int hf_ngap_hFCNode_ID = -1; /* HFCNode_ID */ static int hf_ngap_VolumeTimedReportList_item = -1; /* VolumeTimedReport_Item */ static int hf_ngap_startTimeStamp = -1; /* T_startTimeStamp */ static int hf_ngap_endTimeStamp = -1; /* T_endTimeStamp */ static int hf_ngap_usageCountUL = -1; /* INTEGER_0_18446744073709551615 */ static int hf_ngap_usageCountDL = -1; /* INTEGER_0_18446744073709551615 */ +static int hf_ngap_w_AGF_ID_01 = -1; /* BIT_STRING_SIZE_16 */ static int hf_ngap_eUTRA_CGIListForWarning = -1; /* EUTRA_CGIListForWarning */ static int hf_ngap_nR_CGIListForWarning = -1; /* NR_CGIListForWarning */ static int hf_ngap_tAIListForWarning = -1; /* TAIListForWarning */ static int hf_ngap_emergencyAreaIDList = -1; /* EmergencyAreaIDList */ +static int hf_ngap_wlanMeasConfig = -1; /* WLANMeasConfig */ +static int hf_ngap_wlanMeasConfigNameList = -1; /* WLANMeasConfigNameList */ +static int hf_ngap_wlan_rssi = -1; /* T_wlan_rssi */ +static int hf_ngap_wlan_rtt = -1; /* T_wlan_rtt */ +static int hf_ngap_WLANMeasConfigNameList_item = -1; /* WLANName */ +static int hf_ngap_pagingProbabilityInformation = -1; /* PagingProbabilityInformation */ static int hf_ngap_XnExtTLAs_item = -1; /* XnExtTLA_Item */ static int hf_ngap_iPsecTLA = -1; /* TransportLayerAddress */ static int hf_ngap_gTP_TLAs = -1; /* XnGTP_TLAs */ @@ -1149,7 +1624,7 @@ static int hf_ngap_successfulOutcome_value = -1; /* SuccessfulOutcome_value */ static int hf_ngap_unsuccessfulOutcome_value = -1; /* UnsuccessfulOutcome_value */ /*--- End of included file: packet-ngap-hf.c ---*/ -#line 99 "./asn1/ngap/packet-ngap-template.c" +#line 113 "./asn1/ngap/packet-ngap-template.c" /* Initialize the subtree pointers */ static gint ett_ngap = -1; @@ -1178,6 +1653,16 @@ static gint ett_ngap_NASSecurityParametersFromNGRAN = -1; static gint ett_ngap_NASC = -1; static gint ett_ngap_NAS_PDU = -1; static gint ett_ngap_EN_DCSONConfigurationTransfer = -1; +static gint ett_ngap_BurstArrivalTime = -1; +static gint ett_ngap_CoverageEnhancementLevel = -1; +static gint ett_ngap_MDTModeEutra = -1; +static gint ett_ngap_MeasurementsToActivate = -1; +static gint ett_ngap_MDT_Location_Information = -1; +static gint ett_ngap_NRMobilityHistoryReport = -1; +static gint ett_ngap_LTEUERLFReportContainer = -1; +static gint ett_ngap_NRUERLFReportContainer = -1; +static gint ett_ngap_TargettoSource_Failure_TransparentContainer = -1; +static gint ett_ngap_UERadioCapabilityForPagingOfNB_IoT = -1; /*--- Included file: packet-ngap-ett.c ---*/ #line 1 "./asn1/ngap/packet-ngap-ett.c" @@ -1191,9 +1676,14 @@ static gint ett_ngap_PrivateIE_Field = -1; static gint ett_ngap_AdditionalDLUPTNLInformationForHOList = -1; static gint ett_ngap_AdditionalDLUPTNLInformationForHOItem = -1; static gint ett_ngap_AllocationAndRetentionPriority = -1; +static gint ett_ngap_Allowed_CAG_List_per_PLMN = -1; static gint ett_ngap_AllowedNSSAI = -1; static gint ett_ngap_AllowedNSSAI_Item = -1; +static gint ett_ngap_Allowed_PNI_NPN_List = -1; +static gint ett_ngap_Allowed_PNI_NPN_Item = -1; static gint ett_ngap_AllowedTACs = -1; +static gint ett_ngap_AlternativeQoSParaSetList = -1; +static gint ett_ngap_AlternativeQoSParaSetItem = -1; static gint ett_ngap_AMFPagingTarget = -1; static gint ett_ngap_AMF_TNLAssociationSetupList = -1; static gint ett_ngap_AMF_TNLAssociationSetupItem = -1; @@ -1216,10 +1706,16 @@ static gint ett_ngap_AssistanceDataForPaging = -1; static gint ett_ngap_AssistanceDataForRecommendedCells = -1; static gint ett_ngap_AssociatedQosFlowList = -1; static gint ett_ngap_AssociatedQosFlowItem = -1; +static gint ett_ngap_AreaScopeOfMDT_NR = -1; +static gint ett_ngap_AreaScopeOfMDT_EUTRA = -1; +static gint ett_ngap_AreaScopeOfNeighCellsList = -1; +static gint ett_ngap_AreaScopeOfNeighCellsItem = -1; static gint ett_ngap_BroadcastCancelledAreaList = -1; static gint ett_ngap_BroadcastCompletedAreaList = -1; static gint ett_ngap_BroadcastPLMNList = -1; static gint ett_ngap_BroadcastPLMNItem = -1; +static gint ett_ngap_BluetoothMeasurementConfiguration = -1; +static gint ett_ngap_BluetoothMeasConfigNameList = -1; static gint ett_ngap_CancelledCellsInEAI_EUTRA = -1; static gint ett_ngap_CancelledCellsInEAI_EUTRA_Item = -1; static gint ett_ngap_CancelledCellsInEAI_NR = -1; @@ -1228,7 +1724,13 @@ static gint ett_ngap_CancelledCellsInTAI_EUTRA = -1; static gint ett_ngap_CancelledCellsInTAI_EUTRA_Item = -1; static gint ett_ngap_CancelledCellsInTAI_NR = -1; static gint ett_ngap_CancelledCellsInTAI_NR_Item = -1; +static gint ett_ngap_CandidateCellList = -1; +static gint ett_ngap_CandidateCell_Item = -1; +static gint ett_ngap_CandidateCellID = -1; +static gint ett_ngap_CandidatePCI = -1; static gint ett_ngap_Cause = -1; +static gint ett_ngap_Cell_CAGInformation = -1; +static gint ett_ngap_CellCAGList = -1; static gint ett_ngap_CellIDBroadcastEUTRA = -1; static gint ett_ngap_CellIDBroadcastEUTRA_Item = -1; static gint ett_ngap_CellIDBroadcastNR = -1; @@ -1257,8 +1759,19 @@ static gint ett_ngap_CPTransportLayerInformation = -1; static gint ett_ngap_CriticalityDiagnostics = -1; static gint ett_ngap_CriticalityDiagnostics_IE_List = -1; static gint ett_ngap_CriticalityDiagnostics_IE_Item = -1; +static gint ett_ngap_CellBasedMDT_NR = -1; +static gint ett_ngap_CellIdListforMDT_NR = -1; +static gint ett_ngap_CellBasedMDT_EUTRA = -1; +static gint ett_ngap_CellIdListforMDT_EUTRA = -1; static gint ett_ngap_DataForwardingResponseDRBList = -1; static gint ett_ngap_DataForwardingResponseDRBItem = -1; +static gint ett_ngap_DAPSRequestInfo = -1; +static gint ett_ngap_DAPSResponseInfoList = -1; +static gint ett_ngap_DAPSResponseInfoItem = -1; +static gint ett_ngap_DAPSResponseInfo = -1; +static gint ett_ngap_DataForwardingResponseERABList = -1; +static gint ett_ngap_DataForwardingResponseERABListItem = -1; +static gint ett_ngap_DL_CP_SecurityInformation = -1; static gint ett_ngap_DRBsSubjectToStatusTransferList = -1; static gint ett_ngap_DRBsSubjectToStatusTransferItem = -1; static gint ett_ngap_DRBStatusDL = -1; @@ -1270,6 +1783,11 @@ static gint ett_ngap_DRBStatusUL18 = -1; static gint ett_ngap_DRBsToQosFlowsMappingList = -1; static gint ett_ngap_DRBsToQosFlowsMappingItem = -1; static gint ett_ngap_Dynamic5QIDescriptor = -1; +static gint ett_ngap_EarlyStatusTransfer_TransparentContainer = -1; +static gint ett_ngap_ProcedureStageChoice = -1; +static gint ett_ngap_FirstDLCount = -1; +static gint ett_ngap_DRBsSubjectToEarlyStatusTransfer_List = -1; +static gint ett_ngap_DRBsSubjectToEarlyStatusTransfer_Item = -1; static gint ett_ngap_EmergencyAreaIDBroadcastEUTRA = -1; static gint ett_ngap_EmergencyAreaIDBroadcastEUTRA_Item = -1; static gint ett_ngap_EmergencyAreaIDBroadcastNR = -1; @@ -1281,6 +1799,7 @@ static gint ett_ngap_EmergencyAreaIDCancelledNR_Item = -1; static gint ett_ngap_EmergencyAreaIDList = -1; static gint ett_ngap_EmergencyAreaIDListForRestart = -1; static gint ett_ngap_EmergencyFallbackIndicator = -1; +static gint ett_ngap_ENB_ID = -1; static gint ett_ngap_EndpointIPAddressAndPort = -1; static gint ett_ngap_EquivalentPLMNs = -1; static gint ett_ngap_EPS_TAI = -1; @@ -1293,15 +1812,28 @@ static gint ett_ngap_ExpectedUEActivityBehaviour = -1; static gint ett_ngap_ExpectedUEBehaviour = -1; static gint ett_ngap_ExpectedUEMovingTrajectory = -1; static gint ett_ngap_ExpectedUEMovingTrajectoryItem = -1; +static gint ett_ngap_ExtendedRATRestrictionInformation = -1; +static gint ett_ngap_ExtendedSliceSupportList = -1; +static gint ett_ngap_EventTrigger = -1; +static gint ett_ngap_EventL1LoggedMDTConfig = -1; +static gint ett_ngap_MeasurementThresholdL1LoggedMDT = -1; +static gint ett_ngap_FailureIndication = -1; static gint ett_ngap_FiveG_S_TMSI = -1; static gint ett_ngap_ForbiddenAreaInformation = -1; static gint ett_ngap_ForbiddenAreaInformation_Item = -1; static gint ett_ngap_ForbiddenTACs = -1; +static gint ett_ngap_FromEUTRANtoNGRAN = -1; +static gint ett_ngap_FromNGRANtoEUTRAN = -1; static gint ett_ngap_GBR_QosInformation = -1; +static gint ett_ngap_GlobalENB_ID = -1; static gint ett_ngap_GlobalGNB_ID = -1; static gint ett_ngap_GlobalN3IWF_ID = -1; +static gint ett_ngap_GlobalLine_ID = -1; static gint ett_ngap_GlobalNgENB_ID = -1; static gint ett_ngap_GlobalRANNodeID = -1; +static gint ett_ngap_GlobalTNGF_ID = -1; +static gint ett_ngap_GlobalTWIF_ID = -1; +static gint ett_ngap_GlobalW_AGF_ID = -1; static gint ett_ngap_GNB_ID = -1; static gint ett_ngap_GTPTunnel = -1; static gint ett_ngap_GUAMI = -1; @@ -1310,31 +1842,78 @@ static gint ett_ngap_HandoverPreparationUnsuccessfulTransfer = -1; static gint ett_ngap_HandoverRequestAcknowledgeTransfer = -1; static gint ett_ngap_HandoverRequiredTransfer = -1; static gint ett_ngap_HandoverResourceAllocationUnsuccessfulTransfer = -1; +static gint ett_ngap_HOReport = -1; static gint ett_ngap_InfoOnRecommendedCellsAndRANNodesForPaging = -1; +static gint ett_ngap_ImmediateMDTNr = -1; +static gint ett_ngap_InterSystemFailureIndication = -1; +static gint ett_ngap_IntersystemSONConfigurationTransfer = -1; +static gint ett_ngap_IntersystemSONTransferType = -1; +static gint ett_ngap_IntersystemSONeNBID = -1; +static gint ett_ngap_IntersystemSONNGRANnodeID = -1; +static gint ett_ngap_IntersystemSONInformation = -1; +static gint ett_ngap_IntersystemSONInformationReport = -1; +static gint ett_ngap_InterSystemHOReport = -1; +static gint ett_ngap_InterSystemHandoverReportType = -1; +static gint ett_ngap_IntersystemUnnecessaryHO = -1; +static gint ett_ngap_LAI = -1; static gint ett_ngap_LastVisitedCellInformation = -1; static gint ett_ngap_LastVisitedCellItem = -1; static gint ett_ngap_LastVisitedNGRANCellInformation = -1; static gint ett_ngap_LocationReportingRequestType = -1; +static gint ett_ngap_LoggedMDTNr = -1; +static gint ett_ngap_LoggedMDTTrigger = -1; +static gint ett_ngap_LTEV2XServicesAuthorized = -1; +static gint ett_ngap_LTEUESidelinkAggregateMaximumBitrate = -1; static gint ett_ngap_MobilityRestrictionList = -1; +static gint ett_ngap_MDTPLMNList = -1; +static gint ett_ngap_MDT_Configuration = -1; +static gint ett_ngap_MDT_Configuration_NR = -1; +static gint ett_ngap_MDT_Configuration_EUTRA = -1; +static gint ett_ngap_MDTModeNr = -1; +static gint ett_ngap_M1Configuration = -1; +static gint ett_ngap_M1ThresholdEventA2 = -1; +static gint ett_ngap_M1PeriodicReporting = -1; +static gint ett_ngap_M4Configuration = -1; +static gint ett_ngap_M5Configuration = -1; +static gint ett_ngap_M6Configuration = -1; +static gint ett_ngap_M7Configuration = -1; +static gint ett_ngap_MDT_Location_Info = -1; static gint ett_ngap_N3IWF_ID = -1; +static gint ett_ngap_NB_IoT_Paging_eDRXInfo = -1; static gint ett_ngap_NgENB_ID = -1; static gint ett_ngap_NGRAN_CGI = -1; static gint ett_ngap_NGRAN_TNLAssociationToRemoveList = -1; static gint ett_ngap_NGRAN_TNLAssociationToRemoveItem = -1; static gint ett_ngap_NonDynamic5QIDescriptor = -1; static gint ett_ngap_NotAllowedTACs = -1; +static gint ett_ngap_NPN_AccessInformation = -1; +static gint ett_ngap_NPN_MobilityInformation = -1; +static gint ett_ngap_NPN_PagingAssistanceInformation = -1; +static gint ett_ngap_NPN_Support = -1; static gint ett_ngap_NR_CGI = -1; static gint ett_ngap_NR_CGIList = -1; static gint ett_ngap_NR_CGIListForWarning = -1; +static gint ett_ngap_NRFrequencyBand_List = -1; +static gint ett_ngap_NRFrequencyBandItem = -1; +static gint ett_ngap_NRFrequencyInfo = -1; +static gint ett_ngap_NRV2XServicesAuthorized = -1; +static gint ett_ngap_NRUESidelinkAggregateMaximumBitrate = -1; static gint ett_ngap_OverloadResponse = -1; static gint ett_ngap_OverloadStartNSSAIList = -1; static gint ett_ngap_OverloadStartNSSAIItem = -1; static gint ett_ngap_PacketErrorRate = -1; +static gint ett_ngap_PagingAssisDataforCEcapabUE = -1; static gint ett_ngap_PagingAttemptInformation = -1; +static gint ett_ngap_PagingeDRXInformation = -1; static gint ett_ngap_PathSwitchRequestAcknowledgeTransfer = -1; static gint ett_ngap_PathSwitchRequestSetupFailedTransfer = -1; static gint ett_ngap_PathSwitchRequestTransfer = -1; static gint ett_ngap_PathSwitchRequestUnsuccessfulTransfer = -1; +static gint ett_ngap_PC5QoSParameters = -1; +static gint ett_ngap_PC5QoSFlowList = -1; +static gint ett_ngap_PC5QoSFlowItem = -1; +static gint ett_ngap_PC5FlowBitRates = -1; +static gint ett_ngap_PCIListForMDT = -1; static gint ett_ngap_PDUSessionAggregateMaximumBitRate = -1; static gint ett_ngap_PDUSessionResourceAdmittedList = -1; static gint ett_ngap_PDUSessionResourceAdmittedItem = -1; @@ -1342,6 +1921,10 @@ static gint ett_ngap_PDUSessionResourceFailedToModifyListModCfm = -1; static gint ett_ngap_PDUSessionResourceFailedToModifyItemModCfm = -1; static gint ett_ngap_PDUSessionResourceFailedToModifyListModRes = -1; static gint ett_ngap_PDUSessionResourceFailedToModifyItemModRes = -1; +static gint ett_ngap_PDUSessionResourceFailedToResumeListRESReq = -1; +static gint ett_ngap_PDUSessionResourceFailedToResumeItemRESReq = -1; +static gint ett_ngap_PDUSessionResourceFailedToResumeListRESRes = -1; +static gint ett_ngap_PDUSessionResourceFailedToResumeItemRESRes = -1; static gint ett_ngap_PDUSessionResourceFailedToSetupListCxtFail = -1; static gint ett_ngap_PDUSessionResourceFailedToSetupItemCxtFail = -1; static gint ett_ngap_PDUSessionResourceFailedToSetupListCxtRes = -1; @@ -1390,6 +1973,10 @@ static gint ett_ngap_PDUSessionResourceReleasedItemPSFail = -1; static gint ett_ngap_PDUSessionResourceReleasedListRelRes = -1; static gint ett_ngap_PDUSessionResourceReleasedItemRelRes = -1; static gint ett_ngap_PDUSessionResourceReleaseResponseTransfer = -1; +static gint ett_ngap_PDUSessionResourceResumeListRESReq = -1; +static gint ett_ngap_PDUSessionResourceResumeItemRESReq = -1; +static gint ett_ngap_PDUSessionResourceResumeListRESRes = -1; +static gint ett_ngap_PDUSessionResourceResumeItemRESRes = -1; static gint ett_ngap_PDUSessionResourceSecondaryRATUsageList = -1; static gint ett_ngap_PDUSessionResourceSecondaryRATUsageItem = -1; static gint ett_ngap_PDUSessionResourceSetupListCxtReq = -1; @@ -1405,6 +1992,8 @@ static gint ett_ngap_PDUSessionResourceSetupItemSURes = -1; static gint ett_ngap_PDUSessionResourceSetupRequestTransfer = -1; static gint ett_ngap_PDUSessionResourceSetupResponseTransfer = -1; static gint ett_ngap_PDUSessionResourceSetupUnsuccessfulTransfer = -1; +static gint ett_ngap_PDUSessionResourceSuspendListSUSReq = -1; +static gint ett_ngap_PDUSessionResourceSuspendItemSUSReq = -1; static gint ett_ngap_PDUSessionResourceSwitchedList = -1; static gint ett_ngap_PDUSessionResourceSwitchedItem = -1; static gint ett_ngap_PDUSessionResourceToBeSwitchedDLList = -1; @@ -1416,6 +2005,7 @@ static gint ett_ngap_PDUSessionResourceToReleaseItemRelCmd = -1; static gint ett_ngap_PDUSessionUsageReport = -1; static gint ett_ngap_PLMNSupportList = -1; static gint ett_ngap_PLMNSupportItem = -1; +static gint ett_ngap_PNI_NPN_MobilityInformation = -1; static gint ett_ngap_PWSFailedCellIDList = -1; static gint ett_ngap_QosCharacteristics = -1; static gint ett_ngap_QosFlowAcceptedList = -1; @@ -1453,13 +2043,20 @@ static gint ett_ngap_RecommendedCellItem = -1; static gint ett_ngap_RecommendedRANNodesForPaging = -1; static gint ett_ngap_RecommendedRANNodeList = -1; static gint ett_ngap_RecommendedRANNodeItem = -1; +static gint ett_ngap_RedundantPDUSessionInformation = -1; static gint ett_ngap_ResetType = -1; +static gint ett_ngap_RIMInformationTransfer = -1; +static gint ett_ngap_RIMInformation = -1; +static gint ett_ngap_ScheduledCommunicationTime = -1; static gint ett_ngap_SCTP_TLAs = -1; static gint ett_ngap_SecondaryRATUsageInformation = -1; static gint ett_ngap_SecondaryRATDataUsageReportTransfer = -1; static gint ett_ngap_SecurityContext = -1; static gint ett_ngap_SecurityIndication = -1; static gint ett_ngap_SecurityResult = -1; +static gint ett_ngap_SensorMeasurementConfiguration = -1; +static gint ett_ngap_SensorMeasConfigName = -1; +static gint ett_ngap_SensorNameConfig = -1; static gint ett_ngap_ServedGUAMIList = -1; static gint ett_ngap_ServedGUAMIItem = -1; static gint ett_ngap_ServiceAreaInformation = -1; @@ -1468,10 +2065,12 @@ static gint ett_ngap_SliceOverloadList = -1; static gint ett_ngap_SliceOverloadItem = -1; static gint ett_ngap_SliceSupportList = -1; static gint ett_ngap_SliceSupportItem = -1; +static gint ett_ngap_SNPN_MobilityInformation = -1; static gint ett_ngap_S_NSSAI = -1; static gint ett_ngap_SONConfigurationTransfer = -1; static gint ett_ngap_SONInformation = -1; static gint ett_ngap_SONInformationReply = -1; +static gint ett_ngap_SONInformationReport = -1; static gint ett_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer = -1; static gint ett_ngap_SourceRANNodeID = -1; static gint ett_ngap_SourceToTarget_AMFInformationReroute = -1; @@ -1495,14 +2094,30 @@ static gint ett_ngap_TAIListForWarning = -1; static gint ett_ngap_TargeteNB_ID = -1; static gint ett_ngap_TargetID = -1; static gint ett_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer = -1; +static gint ett_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer = -1; static gint ett_ngap_TargetRANNodeID = -1; +static gint ett_ngap_TargetRNC_ID = -1; +static gint ett_ngap_TNGF_ID = -1; static gint ett_ngap_TNLAssociationList = -1; static gint ett_ngap_TNLAssociationItem = -1; +static gint ett_ngap_TooearlyIntersystemHO = -1; static gint ett_ngap_TraceActivation = -1; +static gint ett_ngap_TAIBasedMDT = -1; +static gint ett_ngap_TAIListforMDT = -1; +static gint ett_ngap_TABasedMDT = -1; +static gint ett_ngap_TAListforMDT = -1; +static gint ett_ngap_TWIF_ID = -1; +static gint ett_ngap_TSCAssistanceInformation = -1; +static gint ett_ngap_TSCTrafficCharacteristics = -1; static gint ett_ngap_UEAggregateMaximumBitRate = -1; static gint ett_ngap_UE_associatedLogicalNG_connectionList = -1; static gint ett_ngap_UE_associatedLogicalNG_connectionItem = -1; +static gint ett_ngap_UEContextResumeRequestTransfer = -1; +static gint ett_ngap_UEContextResumeResponseTransfer = -1; +static gint ett_ngap_UEContextSuspendRequestTransfer = -1; +static gint ett_ngap_UE_DifferentiationInfo = -1; static gint ett_ngap_UEHistoryInformation = -1; +static gint ett_ngap_UEHistoryInformationFromTheUE = -1; static gint ett_ngap_UEIdentityIndexValue = -1; static gint ett_ngap_UE_NGAP_IDs = -1; static gint ett_ngap_UE_NGAP_ID_pair = -1; @@ -1510,7 +2125,9 @@ static gint ett_ngap_UEPagingIdentity = -1; static gint ett_ngap_UEPresenceInAreaOfInterestList = -1; static gint ett_ngap_UEPresenceInAreaOfInterestItem = -1; static gint ett_ngap_UERadioCapabilityForPaging = -1; +static gint ett_ngap_UERLFReportContainer = -1; static gint ett_ngap_UESecurityCapabilities = -1; +static gint ett_ngap_UL_CP_SecurityInformation = -1; static gint ett_ngap_UL_NGU_UP_TNLModifyList = -1; static gint ett_ngap_UL_NGU_UP_TNLModifyItem = -1; static gint ett_ngap_UnavailableGUAMIList = -1; @@ -1523,11 +2140,18 @@ static gint ett_ngap_UPTransportLayerInformationPairItem = -1; static gint ett_ngap_UserLocationInformation = -1; static gint ett_ngap_UserLocationInformationEUTRA = -1; static gint ett_ngap_UserLocationInformationN3IWF = -1; +static gint ett_ngap_UserLocationInformationTNGF = -1; +static gint ett_ngap_UserLocationInformationTWIF = -1; +static gint ett_ngap_UserLocationInformationW_AGF = -1; static gint ett_ngap_UserLocationInformationNR = -1; static gint ett_ngap_UserPlaneSecurityInformation = -1; static gint ett_ngap_VolumeTimedReportList = -1; static gint ett_ngap_VolumeTimedReport_Item = -1; +static gint ett_ngap_W_AGF_ID = -1; static gint ett_ngap_WarningAreaList = -1; +static gint ett_ngap_WLANMeasurementConfiguration = -1; +static gint ett_ngap_WLANMeasConfigNameList = -1; +static gint ett_ngap_WUS_Assistance_Information = -1; static gint ett_ngap_XnExtTLAs = -1; static gint ett_ngap_XnExtTLA_Item = -1; static gint ett_ngap_XnGTP_TLAs = -1; @@ -1548,10 +2172,19 @@ static gint ett_ngap_InitialContextSetupFailure = -1; static gint ett_ngap_UEContextReleaseRequest = -1; static gint ett_ngap_UEContextReleaseCommand = -1; static gint ett_ngap_UEContextReleaseComplete = -1; +static gint ett_ngap_UEContextResumeRequest = -1; +static gint ett_ngap_UEContextResumeResponse = -1; +static gint ett_ngap_UEContextResumeFailure = -1; +static gint ett_ngap_UEContextSuspendRequest = -1; +static gint ett_ngap_UEContextSuspendResponse = -1; +static gint ett_ngap_UEContextSuspendFailure = -1; static gint ett_ngap_UEContextModificationRequest = -1; static gint ett_ngap_UEContextModificationResponse = -1; static gint ett_ngap_UEContextModificationFailure = -1; static gint ett_ngap_RRCInactiveTransitionReport = -1; +static gint ett_ngap_RetrieveUEInformation = -1; +static gint ett_ngap_UEInformationTransfer = -1; +static gint ett_ngap_RANCPRelocationIndication = -1; static gint ett_ngap_HandoverRequired = -1; static gint ett_ngap_HandoverCommand = -1; static gint ett_ngap_HandoverPreparationFailure = -1; @@ -1564,6 +2197,9 @@ static gint ett_ngap_PathSwitchRequestAcknowledge = -1; static gint ett_ngap_PathSwitchRequestFailure = -1; static gint ett_ngap_HandoverCancel = -1; static gint ett_ngap_HandoverCancelAcknowledge = -1; +static gint ett_ngap_HandoverSuccess = -1; +static gint ett_ngap_UplinkRANEarlyStatusTransfer = -1; +static gint ett_ngap_DownlinkRANEarlyStatusTransfer = -1; static gint ett_ngap_UplinkRANStatusTransfer = -1; static gint ett_ngap_DownlinkRANStatusTransfer = -1; static gint ett_ngap_Paging = -1; @@ -1612,13 +2248,19 @@ static gint ett_ngap_UERadioCapabilityCheckRequest = -1; static gint ett_ngap_UERadioCapabilityCheckResponse = -1; static gint ett_ngap_PrivateMessage = -1; static gint ett_ngap_SecondaryRATDataUsageReport = -1; +static gint ett_ngap_UplinkRIMInformationTransfer = -1; +static gint ett_ngap_DownlinkRIMInformationTransfer = -1; +static gint ett_ngap_ConnectionEstablishmentIndication = -1; +static gint ett_ngap_UERadioCapabilityIDMappingRequest = -1; +static gint ett_ngap_UERadioCapabilityIDMappingResponse = -1; +static gint ett_ngap_AMFCPRelocationIndication = -1; static gint ett_ngap_NGAP_PDU = -1; static gint ett_ngap_InitiatingMessage = -1; static gint ett_ngap_SuccessfulOutcome = -1; static gint ett_ngap_UnsuccessfulOutcome = -1; /*--- End of included file: packet-ngap-ett.c ---*/ -#line 128 "./asn1/ngap/packet-ngap-template.c" +#line 152 "./asn1/ngap/packet-ngap-template.c" static expert_field ei_ngap_number_pages_le15 = EI_INIT; @@ -1642,6 +2284,8 @@ struct ngap_conv_info { address addr_b; guint32 port_b; GlobalRANNodeID_enum ranmode_id_b; + wmem_map_t *nbiot_ta; + wmem_tree_t *nbiot_ran_ue_ngap_id; }; enum { @@ -1649,6 +2293,16 @@ enum { TARGET_TO_SOURCE_TRANSPARENT_CONTAINER }; +struct ngap_supported_ta { + guint32 tac; + wmem_array_t *plmn; +}; + +struct ngap_tai { + guint32 plmn; + guint32 tac; +}; + struct ngap_private_data { struct ngap_conv_info *ngap_conv; guint32 procedure_code; @@ -1658,6 +2312,9 @@ struct ngap_private_data { guint32 handover_type_value; guint8 data_coding_scheme; guint8 transparent_container_type; + struct ngap_supported_ta *supported_ta; + struct ngap_tai *tai; + guint32 ran_ue_ngap_id; }; enum { @@ -1673,10 +2330,24 @@ static const enum_val_t ngap_target_ng_ran_container_vals[] = { {NULL, NULL, -1} }; +enum { + NGAP_LTE_CONTAINER_AUTOMATIC, + NGAP_LTE_CONTAINER_LEGACY, + NGAP_LTE_CONTAINER_NBIOT +}; + +static const enum_val_t ngap_lte_container_vals[] = { + {"automatic", "Automatic", NGAP_LTE_CONTAINER_AUTOMATIC}, + {"legacy", "Legacy LTE", NGAP_LTE_CONTAINER_LEGACY}, + {"nb-iot","NB-IoT", NGAP_LTE_CONTAINER_NBIOT}, + {NULL, NULL, -1} +}; + /* Global variables */ static guint gbl_ngapSctpPort = SCTP_PORT_NGAP; static gboolean ngap_dissect_container = TRUE; static gint ngap_dissect_target_ng_ran_container_as = NGAP_NG_RAN_CONTAINER_AUTOMATIC; +static gint ngap_dissect_lte_container_as = NGAP_LTE_CONTAINER_AUTOMATIC; /* Dissector tables */ static dissector_table_t ngap_ies_dissector_table; @@ -1720,6 +2391,7 @@ static int dissect_PathSwitchRequestAcknowledgeTransfer_PDU(tvbuff_t *tvb _U_, p static int dissect_PathSwitchRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_HandoverPreparationUnsuccessfulTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_PDUSessionResourceReleaseCommandTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); const value_string ngap_serialNumber_gs_vals[] = { { 0, "Display mode iamfdiate, cell wide"}, @@ -1816,6 +2488,30 @@ ngap_PeriodicRegistrationUpdateTimer_fmt(gchar *s, guint32 v) } } +static void +ngap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v); +} + +static void +ngap_Threshold_RSRP_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v); +} + +static void +ngap_Threshold_RSRQ_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v); +} + +static void +ngap_Threshold_SINR_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v); +} + static struct ngap_private_data* ngap_get_private_data(packet_info *pinfo) { @@ -1844,12 +2540,38 @@ ngap_get_ranmode_id(address *addr, guint32 port, packet_info *pinfo) return ranmode_id; } +static gboolean +ngap_is_nbiot_ue(packet_info *pinfo) +{ + struct ngap_private_data *ngap_data = ngap_get_private_data(pinfo); + + if (ngap_data->ngap_conv) { + wmem_tree_key_t tree_key[3]; + guint32 *id; + + tree_key[0].length = 1; + tree_key[0].key = &ngap_data->ran_ue_ngap_id; + tree_key[1].length = 1; + tree_key[1].key = &pinfo->num; + tree_key[2].length = 0; + tree_key[2].key = NULL; + id = (guint32*)wmem_tree_lookup32_array_le(ngap_data->ngap_conv->nbiot_ran_ue_ngap_id, tree_key); + if (id && (*id == ngap_data->ran_ue_ngap_id)) { + return TRUE; + } + } + return FALSE; +} + /*--- Included file: packet-ngap-fn.c ---*/ #line 1 "./asn1/ngap/packet-ngap-fn.c" /*--- PDUs declarations ---*/ static int dissect_PDUSessionResourceModifyIndicationUnsuccessfulTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_UEContextResumeRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_UEContextResumeResponseTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_SecondaryRATDataUsageReportTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_UEContextSuspendRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static const value_string ngap_Criticality_vals[] = { @@ -1964,6 +2686,19 @@ static const value_string ngap_ProcedureCode_vals[] = { { id_UplinkUEAssociatedNRPPaTransport, "id-UplinkUEAssociatedNRPPaTransport" }, { id_WriteReplaceWarning, "id-WriteReplaceWarning" }, { id_SecondaryRATDataUsageReport, "id-SecondaryRATDataUsageReport" }, + { id_UplinkRIMInformationTransfer, "id-UplinkRIMInformationTransfer" }, + { id_DownlinkRIMInformationTransfer, "id-DownlinkRIMInformationTransfer" }, + { id_RetrieveUEInformation, "id-RetrieveUEInformation" }, + { id_UEInformationTransfer, "id-UEInformationTransfer" }, + { id_RANCPRelocationIndication, "id-RANCPRelocationIndication" }, + { id_UEContextResume, "id-UEContextResume" }, + { id_UEContextSuspend, "id-UEContextSuspend" }, + { id_UERadioCapabilityIDMapping, "id-UERadioCapabilityIDMapping" }, + { id_HandoverSuccess, "id-HandoverSuccess" }, + { id_UplinkRANEarlyStatusTransfer, "id-UplinkRANEarlyStatusTransfer" }, + { id_DownlinkRANEarlyStatusTransfer, "id-DownlinkRANEarlyStatusTransfer" }, + { id_AMFCPRelocationIndication, "id-AMFCPRelocationIndication" }, + { id_ConnectionEstablishmentIndication, "id-ConnectionEstablishmentIndication" }, { 0, NULL } }; @@ -1972,7 +2707,7 @@ static value_string_ext ngap_ProcedureCode_vals_ext = VALUE_STRING_EXT_INIT(ngap static int dissect_ngap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 107 "./asn1/ngap/ngap.cnf" +#line 111 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 255U, &ngap_data->procedure_code, FALSE); @@ -1986,7 +2721,7 @@ dissect_ngap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_ngap_ProtocolExtensionID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 101 "./asn1/ngap/ngap.cnf" +#line 105 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 65535U, &ngap_data->protocol_extension_id, FALSE); @@ -2173,6 +2908,104 @@ static const value_string ngap_ProtocolIE_ID_vals[] = { { id_SourceToTarget_AMFInformationReroute, "id-SourceToTarget-AMFInformationReroute" }, { id_AdditionalULForwardingUPTNLInformation, "id-AdditionalULForwardingUPTNLInformation" }, { id_SCTP_TLAs, "id-SCTP-TLAs" }, + { id_DataForwardingResponseERABList, "id-DataForwardingResponseERABList" }, + { id_RIMInformationTransfer, "id-RIMInformationTransfer" }, + { id_GUAMIType, "id-GUAMIType" }, + { id_SRVCCOperationPossible, "id-SRVCCOperationPossible" }, + { id_TargetRNC_ID, "id-TargetRNC-ID" }, + { id_RAT_Information, "id-RAT-Information" }, + { id_ExtendedRATRestrictionInformation, "id-ExtendedRATRestrictionInformation" }, + { id_QosMonitoringRequest, "id-QosMonitoringRequest" }, + { id_SgNB_UE_X2AP_ID, "id-SgNB-UE-X2AP-ID" }, + { id_AdditionalRedundantDL_NGU_UP_TNLInformation, "id-AdditionalRedundantDL-NGU-UP-TNLInformation" }, + { id_AdditionalRedundantDLQosFlowPerTNLInformation, "id-AdditionalRedundantDLQosFlowPerTNLInformation" }, + { id_AdditionalRedundantNGU_UP_TNLInformation, "id-AdditionalRedundantNGU-UP-TNLInformation" }, + { id_AdditionalRedundantUL_NGU_UP_TNLInformation, "id-AdditionalRedundantUL-NGU-UP-TNLInformation" }, + { id_CNPacketDelayBudgetDL, "id-CNPacketDelayBudgetDL" }, + { id_CNPacketDelayBudgetUL, "id-CNPacketDelayBudgetUL" }, + { id_ExtendedPacketDelayBudget, "id-ExtendedPacketDelayBudget" }, + { id_RedundantCommonNetworkInstance, "id-RedundantCommonNetworkInstance" }, + { id_RedundantDL_NGU_TNLInformationReused, "id-RedundantDL-NGU-TNLInformationReused" }, + { id_RedundantDL_NGU_UP_TNLInformation, "id-RedundantDL-NGU-UP-TNLInformation" }, + { id_RedundantDLQosFlowPerTNLInformation, "id-RedundantDLQosFlowPerTNLInformation" }, + { id_RedundantQosFlowIndicator, "id-RedundantQosFlowIndicator" }, + { id_RedundantUL_NGU_UP_TNLInformation, "id-RedundantUL-NGU-UP-TNLInformation" }, + { id_TSCTrafficCharacteristics, "id-TSCTrafficCharacteristics" }, + { id_RedundantPDUSessionInformation, "id-RedundantPDUSessionInformation" }, + { id_UsedRSNInformation, "id-UsedRSNInformation" }, + { id_IAB_Authorized, "id-IAB-Authorized" }, + { id_IAB_Supported, "id-IAB-Supported" }, + { id_IABNodeIndication, "id-IABNodeIndication" }, + { id_NB_IoT_PagingDRX, "id-NB-IoT-PagingDRX" }, + { id_NB_IoT_Paging_eDRXInfo, "id-NB-IoT-Paging-eDRXInfo" }, + { id_NB_IoT_DefaultPagingDRX, "id-NB-IoT-DefaultPagingDRX" }, + { id_Enhanced_CoverageRestriction, "id-Enhanced-CoverageRestriction" }, + { id_Extended_ConnectedTime, "id-Extended-ConnectedTime" }, + { id_PagingAssisDataforCEcapabUE, "id-PagingAssisDataforCEcapabUE" }, + { id_WUS_Assistance_Information, "id-WUS-Assistance-Information" }, + { id_UE_DifferentiationInfo, "id-UE-DifferentiationInfo" }, + { id_NB_IoT_UEPriority, "id-NB-IoT-UEPriority" }, + { id_UL_CP_SecurityInformation, "id-UL-CP-SecurityInformation" }, + { id_DL_CP_SecurityInformation, "id-DL-CP-SecurityInformation" }, + { id_TAI, "id-TAI" }, + { id_UERadioCapabilityForPagingOfNB_IoT, "id-UERadioCapabilityForPagingOfNB-IoT" }, + { id_LTEV2XServicesAuthorized, "id-LTEV2XServicesAuthorized" }, + { id_NRV2XServicesAuthorized, "id-NRV2XServicesAuthorized" }, + { id_LTEUESidelinkAggregateMaximumBitrate, "id-LTEUESidelinkAggregateMaximumBitrate" }, + { id_NRUESidelinkAggregateMaximumBitrate, "id-NRUESidelinkAggregateMaximumBitrate" }, + { id_PC5QoSParameters, "id-PC5QoSParameters" }, + { id_AlternativeQoSParaSetList, "id-AlternativeQoSParaSetList" }, + { id_CurrentQoSParaSetIndex, "id-CurrentQoSParaSetIndex" }, + { id_CEmodeBrestricted, "id-CEmodeBrestricted" }, + { id_PagingeDRXInformation, "id-PagingeDRXInformation" }, + { id_CEmodeBSupport_Indicator, "id-CEmodeBSupport-Indicator" }, + { id_LTEM_Indication, "id-LTEM-Indication" }, + { id_EndIndication, "id-EndIndication" }, + { id_EDT_Session, "id-EDT-Session" }, + { id_UECapabilityInfoRequest, "id-UECapabilityInfoRequest" }, + { id_PDUSessionResourceFailedToResumeListRESReq, "id-PDUSessionResourceFailedToResumeListRESReq" }, + { id_PDUSessionResourceFailedToResumeListRESRes, "id-PDUSessionResourceFailedToResumeListRESRes" }, + { id_PDUSessionResourceSuspendListSUSReq, "id-PDUSessionResourceSuspendListSUSReq" }, + { id_PDUSessionResourceResumeListRESReq, "id-PDUSessionResourceResumeListRESReq" }, + { id_PDUSessionResourceResumeListRESRes, "id-PDUSessionResourceResumeListRESRes" }, + { id_UE_UP_CIoT_Support, "id-UE-UP-CIoT-Support" }, + { id_Suspend_Request_Indication, "id-Suspend-Request-Indication" }, + { id_Suspend_Response_Indication, "id-Suspend-Response-Indication" }, + { id_RRC_Resume_Cause, "id-RRC-Resume-Cause" }, + { id_RGLevelWirelineAccessCharacteristics, "id-RGLevelWirelineAccessCharacteristics" }, + { id_W_AGFIdentityInformation, "id-W-AGFIdentityInformation" }, + { id_GlobalTNGF_ID, "id-GlobalTNGF-ID" }, + { id_GlobalTWIF_ID, "id-GlobalTWIF-ID" }, + { id_GlobalW_AGF_ID, "id-GlobalW-AGF-ID" }, + { id_UserLocationInformationW_AGF, "id-UserLocationInformationW-AGF" }, + { id_UserLocationInformationTNGF, "id-UserLocationInformationTNGF" }, + { id_AuthenticatedIndication, "id-AuthenticatedIndication" }, + { id_TNGFIdentityInformation, "id-TNGFIdentityInformation" }, + { id_TWIFIdentityInformation, "id-TWIFIdentityInformation" }, + { id_UserLocationInformationTWIF, "id-UserLocationInformationTWIF" }, + { id_SelectedPLMNIdentity, "id-SelectedPLMNIdentity" }, + { id_IntersystemSONConfigurationTransferDL, "id-IntersystemSONConfigurationTransferDL" }, + { id_IntersystemSONConfigurationTransferUL, "id-IntersystemSONConfigurationTransferUL" }, + { id_SONInformationReport, "id-SONInformationReport" }, + { id_UEHistoryInformationFromTheUE, "id-UEHistoryInformationFromTheUE" }, + { id_ManagementBasedMDTPLMNList, "id-ManagementBasedMDTPLMNList" }, + { id_MDTConfiguration, "id-MDTConfiguration" }, + { id_PrivacyIndicator, "id-PrivacyIndicator" }, + { id_TraceCollectionEntityURI, "id-TraceCollectionEntityURI" }, + { id_NPN_Support, "id-NPN-Support" }, + { id_NPN_AccessInformation, "id-NPN-AccessInformation" }, + { id_NPN_PagingAssistanceInformation, "id-NPN-PagingAssistanceInformation" }, + { id_NPN_MobilityInformation, "id-NPN-MobilityInformation" }, + { id_TargettoSource_Failure_TransparentContainer, "id-TargettoSource-Failure-TransparentContainer" }, + { id_NID, "id-NID" }, + { id_UERadioCapabilityID, "id-UERadioCapabilityID" }, + { id_UERadioCapability_EUTRA_Format, "id-UERadioCapability-EUTRA-Format" }, + { id_DAPSRequestInfo, "id-DAPSRequestInfo" }, + { id_DAPSResponseInfoList, "id-DAPSResponseInfoList" }, + { id_EarlyStatusTransfer_TransparentContainer, "id-EarlyStatusTransfer-TransparentContainer" }, + { id_NotifySourceNGRANNode, "id-NotifySourceNGRANNode" }, + { id_ExtendedSliceSupportList, "id-ExtendedSliceSupportList" }, + { id_ExtendedTAISliceSupportList, "id-ExtendedTAISliceSupportList" }, { 0, NULL } }; @@ -2181,7 +3014,7 @@ static value_string_ext ngap_ProtocolIE_ID_vals_ext = VALUE_STRING_EXT_INIT(ngap static int dissect_ngap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 83 "./asn1/ngap/ngap.cnf" +#line 87 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 65535U, &ngap_data->protocol_ie_id, FALSE); @@ -2189,7 +3022,7 @@ dissect_ngap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ -#line 87 "./asn1/ngap/ngap.cnf" +#line 91 "./asn1/ngap/ngap.cnf" if (tree) { proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str_ext(ngap_data->protocol_ie_id, &ngap_ProtocolIE_ID_vals_ext, "unknown (%d)")); @@ -2345,7 +3178,7 @@ dissect_ngap_PrivateIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_ngap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 377 "./asn1/ngap/ngap.cnf" +#line 476 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; int len; @@ -2586,6 +3419,30 @@ dissect_ngap_AllocationAndRetentionPriority(tvbuff_t *tvb _U_, int offset _U_, a static int +dissect_ngap_CAG_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t Allowed_CAG_List_per_PLMN_sequence_of[1] = { + { &hf_ngap_Allowed_CAG_List_per_PLMN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_CAG_ID }, +}; + +static int +dissect_ngap_Allowed_CAG_List_per_PLMN(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_ngap_Allowed_CAG_List_per_PLMN, Allowed_CAG_List_per_PLMN_sequence_of, + 1, maxnoofAllowedCAGsperPLMN, FALSE); + + return offset; +} + + + +static int dissect_ngap_SST(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 1, 1, FALSE, NULL); @@ -2651,14 +3508,94 @@ dissect_ngap_AllowedNSSAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int +dissect_ngap_PLMNIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 431 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + proto_tree *subtree; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 3, 3, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_PLMNIdentity); + dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE); + if (ngap_data->supported_ta) { + guint32 plmn = tvb_get_ntoh24(parameter_tvb, 0); + wmem_array_append_one(ngap_data->supported_ta->plmn, plmn); + } else if (ngap_data->tai) { + ngap_data->tai->plmn = tvb_get_ntoh24(parameter_tvb, 0); + } + } + + + + return offset; +} + + +static const value_string ngap_T_pNI_NPN_restricted_vals[] = { + { 0, "restricted" }, + { 1, "not-restricted" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_pNI_NPN_restricted(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 Allowed_PNI_NPN_Item_sequence[] = { + { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_pNI_NPN_restricted, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_pNI_NPN_restricted }, + { &hf_ngap_allowed_CAG_List_per_PLMN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Allowed_CAG_List_per_PLMN }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_Allowed_PNI_NPN_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_ngap_Allowed_PNI_NPN_Item, Allowed_PNI_NPN_Item_sequence); + + return offset; +} + + +static const per_sequence_t Allowed_PNI_NPN_List_sequence_of[1] = { + { &hf_ngap_Allowed_PNI_NPN_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_Allowed_PNI_NPN_Item }, +}; + +static int +dissect_ngap_Allowed_PNI_NPN_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_ngap_Allowed_PNI_NPN_List, Allowed_PNI_NPN_List_sequence_of, + 1, maxnoofEPLMNsPlusOne, FALSE); + + return offset; +} + + + +static int dissect_ngap_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 358 "./asn1/ngap/ngap.cnf" +#line 418 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 3, 3, FALSE, ¶meter_tvb); if (parameter_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 3, ENC_BIG_ENDIAN); + if (ngap_data->supported_ta) { + ngap_data->supported_ta->tac = tvb_get_ntoh24(parameter_tvb, 0); + } else if (ngap_data->tai) { + ngap_data->tai->tac = tvb_get_ntoh24(parameter_tvb, 0); + } } @@ -2683,9 +3620,9 @@ dissect_ngap_AllowedTACs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int -dissect_ngap_AMFName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_PrintableString(tvb, offset, actx, tree, hf_index, - 1, 150, TRUE); +dissect_ngap_AlternativeQoSParaSetIndex(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; } @@ -2693,23 +3630,89 @@ dissect_ngap_AMFName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int -dissect_ngap_PLMNIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 365 "./asn1/ngap/ngap.cnf" - tvbuff_t *parameter_tvb = NULL; - proto_tree *subtree; +dissect_ngap_BitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, + 0U, G_GUINT64_CONSTANT(4000000000000), NULL, TRUE); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, ¶meter_tvb); + return offset; +} - if (!parameter_tvb) - return offset; - subtree = proto_item_add_subtree(actx->created_item, ett_ngap_PLMNIdentity); - dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE); +static int +dissect_ngap_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, 1023U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_ngap_INTEGER_0_9_(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_ngap_pERScalar , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_9_ }, + { &hf_ngap_pERExponent , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_9_ }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_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_ngap_PacketErrorRate, PacketErrorRate_sequence); + + return offset; +} + + +static const per_sequence_t AlternativeQoSParaSetItem_sequence[] = { + { &hf_ngap_alternativeQoSParaSetIndex, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_AlternativeQoSParaSetIndex }, + { &hf_ngap_guaranteedFlowBitRateDL, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BitRate }, + { &hf_ngap_guaranteedFlowBitRateUL, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BitRate }, + { &hf_ngap_packetDelayBudget, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PacketDelayBudget }, + { &hf_ngap_packetErrorRate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PacketErrorRate }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; +static int +dissect_ngap_AlternativeQoSParaSetItem(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_ngap_AlternativeQoSParaSetItem, AlternativeQoSParaSetItem_sequence); + + return offset; +} +static const per_sequence_t AlternativeQoSParaSetList_sequence_of[1] = { + { &hf_ngap_AlternativeQoSParaSetList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_AlternativeQoSParaSetItem }, +}; + +static int +dissect_ngap_AlternativeQoSParaSetList(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_ngap_AlternativeQoSParaSetList, AlternativeQoSParaSetList_sequence_of, + 1, maxnoofQosParaSets, FALSE); + + return offset; +} + + + +static int +dissect_ngap_AMFName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_PrintableString(tvb, offset, actx, tree, hf_index, + 1, 150, TRUE); + return offset; } @@ -2900,7 +3903,7 @@ static const per_choice_t GlobalRANNodeID_choice[] = { static int dissect_ngap_GlobalRANNodeID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 483 "./asn1/ngap/ngap.cnf" +#line 582 "./asn1/ngap/ngap.cnf" gint value; struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); @@ -2933,9 +3936,35 @@ static const per_sequence_t TAI_sequence[] = { static int dissect_ngap_TAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 391 "./asn1/ngap/ngap.cnf" + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + + ngap_data->tai = wmem_new0(wmem_packet_scope(), struct ngap_tai); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_ngap_TAI, TAI_sequence); + if (!PINFO_FD_VISITED(actx->pinfo) && ngap_data->ngap_conv && + (ngap_data->message_type == INITIATING_MESSAGE) && + (ngap_data->procedure_code == id_InitialUEMessage)) { + guint64 key = (ngap_data->tai->plmn << 24) | ngap_data->tai->tac; + + if (wmem_map_lookup(ngap_data->ngap_conv->nbiot_ta, &key)) { + wmem_tree_key_t tree_key[3]; + guint32 *id = wmem_new(wmem_file_scope(), guint32); + + *id = ngap_data->ran_ue_ngap_id; + tree_key[0].length = 1; + tree_key[0].key = id; + tree_key[1].length = 1; + tree_key[1].key = &actx->pinfo->num; + tree_key[2].length = 0; + tree_key[2].key = NULL; + wmem_tree_insert32_array(ngap_data->ngap_conv->nbiot_ran_ue_ngap_id, tree_key, id); + } + } + + + return offset; } @@ -3205,7 +4234,7 @@ dissect_ngap_AreaOfInterestTAIList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ngap_NRCellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 425 "./asn1/ngap/ngap.cnf" +#line 524 "./asn1/ngap/ngap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 36, 36, FALSE, NULL, 0, &cell_id_tvb, NULL); @@ -3240,7 +4269,7 @@ dissect_ngap_NR_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_ngap_EUTRACellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 436 "./asn1/ngap/ngap.cnf" +#line 535 "./asn1/ngap/ngap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 28, 28, FALSE, NULL, 0, &cell_id_tvb, NULL); @@ -3596,6 +4625,21 @@ dissect_ngap_AssociatedQosFlowList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string ngap_AuthenticatedIndication_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_AuthenticatedIndication(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 int dissect_ngap_AveragingWindow(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -3606,11 +4650,297 @@ dissect_ngap_AveragingWindow(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t CellIdListforMDT_NR_sequence_of[1] = { + { &hf_ngap_CellIdListforMDT_NR_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NR_CGI }, +}; static int -dissect_ngap_BitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, - 0U, G_GUINT64_CONSTANT(4000000000000), NULL, TRUE); +dissect_ngap_CellIdListforMDT_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_ngap_CellIdListforMDT_NR, CellIdListforMDT_NR_sequence_of, + 1, maxnoofCellIDforMDT, FALSE); + + return offset; +} + + +static const per_sequence_t CellBasedMDT_NR_sequence[] = { + { &hf_ngap_cellIdListforMDT, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_CellIdListforMDT_NR }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_CellBasedMDT_NR(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_ngap_CellBasedMDT_NR, CellBasedMDT_NR_sequence); + + return offset; +} + + +static const per_sequence_t TAListforMDT_sequence_of[1] = { + { &hf_ngap_TAListforMDT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_TAC }, +}; + +static int +dissect_ngap_TAListforMDT(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_ngap_TAListforMDT, TAListforMDT_sequence_of, + 1, maxnoofTAforMDT, FALSE); + + return offset; +} + + +static const per_sequence_t TABasedMDT_sequence[] = { + { &hf_ngap_tAListforMDT , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAListforMDT }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TABasedMDT(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_ngap_TABasedMDT, TABasedMDT_sequence); + + return offset; +} + + + +static int +dissect_ngap_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 TAIListforMDT_sequence_of[1] = { + { &hf_ngap_TAIListforMDT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, +}; + +static int +dissect_ngap_TAIListforMDT(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_ngap_TAIListforMDT, TAIListforMDT_sequence_of, + 1, maxnoofTAforMDT, FALSE); + + return offset; +} + + +static const per_sequence_t TAIBasedMDT_sequence[] = { + { &hf_ngap_tAIListforMDT , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAIListforMDT }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TAIBasedMDT(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_ngap_TAIBasedMDT, TAIBasedMDT_sequence); + + return offset; +} + + +static const value_string ngap_AreaScopeOfMDT_NR_vals[] = { + { 0, "cellBased" }, + { 1, "tABased" }, + { 2, "pLMNWide" }, + { 3, "tAIBased" }, + { 0, NULL } +}; + +static const per_choice_t AreaScopeOfMDT_NR_choice[] = { + { 0, &hf_ngap_cellBased , ASN1_EXTENSION_ROOT , dissect_ngap_CellBasedMDT_NR }, + { 1, &hf_ngap_tABased , ASN1_EXTENSION_ROOT , dissect_ngap_TABasedMDT }, + { 2, &hf_ngap_pLMNWide , ASN1_EXTENSION_ROOT , dissect_ngap_NULL }, + { 3, &hf_ngap_tAIBased , ASN1_EXTENSION_ROOT , dissect_ngap_TAIBasedMDT }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_AreaScopeOfMDT_NR(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_ngap_AreaScopeOfMDT_NR, AreaScopeOfMDT_NR_choice, + NULL); + + return offset; +} + + +static const per_sequence_t CellIdListforMDT_EUTRA_sequence_of[1] = { + { &hf_ngap_CellIdListforMDT_EUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, +}; + +static int +dissect_ngap_CellIdListforMDT_EUTRA(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_ngap_CellIdListforMDT_EUTRA, CellIdListforMDT_EUTRA_sequence_of, + 1, maxnoofCellIDforMDT, FALSE); + + return offset; +} + + +static const per_sequence_t CellBasedMDT_EUTRA_sequence[] = { + { &hf_ngap_cellIdListforMDT_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_CellIdListforMDT_EUTRA }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_CellBasedMDT_EUTRA(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_ngap_CellBasedMDT_EUTRA, CellBasedMDT_EUTRA_sequence); + + return offset; +} + + +static const value_string ngap_AreaScopeOfMDT_EUTRA_vals[] = { + { 0, "cellBased" }, + { 1, "tABased" }, + { 2, "pLMNWide" }, + { 3, "tAIBased" }, + { 0, NULL } +}; + +static const per_choice_t AreaScopeOfMDT_EUTRA_choice[] = { + { 0, &hf_ngap_cellBased_01 , ASN1_EXTENSION_ROOT , dissect_ngap_CellBasedMDT_EUTRA }, + { 1, &hf_ngap_tABased , ASN1_EXTENSION_ROOT , dissect_ngap_TABasedMDT }, + { 2, &hf_ngap_pLMNWide , ASN1_EXTENSION_ROOT , dissect_ngap_NULL }, + { 3, &hf_ngap_tAIBased , ASN1_EXTENSION_ROOT , dissect_ngap_TAIBasedMDT }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_AreaScopeOfMDT_EUTRA(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_ngap_AreaScopeOfMDT_EUTRA, AreaScopeOfMDT_EUTRA_choice, + NULL); + + return offset; +} + + + +static int +dissect_ngap_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, + 0U, maxNRARFCN, NULL, FALSE); + + return offset; +} + + + +static int +dissect_ngap_NRFrequencyBand(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, 1024U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t NRFrequencyBandItem_sequence[] = { + { &hf_ngap_nr_frequency_band, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NRFrequencyBand }, + { &hf_ngap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_NRFrequencyBandItem(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_ngap_NRFrequencyBandItem, NRFrequencyBandItem_sequence); + + return offset; +} + + +static const per_sequence_t NRFrequencyBand_List_sequence_of[1] = { + { &hf_ngap_NRFrequencyBand_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NRFrequencyBandItem }, +}; + +static int +dissect_ngap_NRFrequencyBand_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_ngap_NRFrequencyBand_List, NRFrequencyBand_List_sequence_of, + 1, maxnoofNRCellBands, FALSE); + + return offset; +} + + +static const per_sequence_t NRFrequencyInfo_sequence[] = { + { &hf_ngap_nrARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NRARFCN }, + { &hf_ngap_frequencyBand_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NRFrequencyBand_List }, + { &hf_ngap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_NRFrequencyInfo(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_ngap_NRFrequencyInfo, NRFrequencyInfo_sequence); + + return offset; +} + + + +static int +dissect_ngap_NR_PCI(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 per_sequence_t PCIListForMDT_sequence_of[1] = { + { &hf_ngap_PCIListForMDT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NR_PCI }, +}; + +static int +dissect_ngap_PCIListForMDT(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_ngap_PCIListForMDT, PCIListForMDT_sequence_of, + 1, maxnoofNeighPCIforMDT, FALSE); + + return offset; +} + + +static const per_sequence_t AreaScopeOfNeighCellsItem_sequence[] = { + { &hf_ngap_nrFrequencyInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NRFrequencyInfo }, + { &hf_ngap_pciListForMDT , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PCIListForMDT }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_AreaScopeOfNeighCellsItem(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_ngap_AreaScopeOfNeighCellsItem, AreaScopeOfNeighCellsItem_sequence); + + return offset; +} + + +static const per_sequence_t AreaScopeOfNeighCellsList_sequence_of[1] = { + { &hf_ngap_AreaScopeOfNeighCellsList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_AreaScopeOfNeighCellsItem }, +}; + +static int +dissect_ngap_AreaScopeOfNeighCellsList(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_ngap_AreaScopeOfNeighCellsList, AreaScopeOfNeighCellsList_sequence_of, + 1, maxnoofFreqforMDT, FALSE); return offset; } @@ -4353,6 +5683,101 @@ dissect_ngap_BroadcastPLMNList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const value_string ngap_BluetoothMeasConfig_vals[] = { + { 0, "setup" }, + { 0, NULL } +}; + + +static int +dissect_ngap_BluetoothMeasConfig(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 int +dissect_ngap_BluetoothName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 896 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, + 1, 248, FALSE, ¶meter_tvb); + + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA); + + + return offset; +} + + +static const per_sequence_t BluetoothMeasConfigNameList_sequence_of[1] = { + { &hf_ngap_BluetoothMeasConfigNameList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_BluetoothName }, +}; + +static int +dissect_ngap_BluetoothMeasConfigNameList(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_ngap_BluetoothMeasConfigNameList, BluetoothMeasConfigNameList_sequence_of, + 1, maxnoofBluetoothName, FALSE); + + return offset; +} + + +static const value_string ngap_T_bt_rssi_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_bt_rssi(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 BluetoothMeasurementConfiguration_sequence[] = { + { &hf_ngap_bluetoothMeasConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BluetoothMeasConfig }, + { &hf_ngap_bluetoothMeasConfigNameList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BluetoothMeasConfigNameList }, + { &hf_ngap_bt_rssi , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_bt_rssi }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_BluetoothMeasurementConfiguration(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_ngap_BluetoothMeasurementConfiguration, BluetoothMeasurementConfiguration_sequence); + + return offset; +} + + + +static int +dissect_ngap_BurstArrivalTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 902 "./asn1/ngap/ngap.cnf" + tvbuff_t *burst_arrival_time_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &burst_arrival_time_tvb); + + if (burst_arrival_time_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_BurstArrivalTime); + dissect_nr_rrc_ReferenceTime_r16_PDU(burst_arrival_time_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + static const value_string ngap_CancelAllWarningMessages_vals[] = { { 0, "true" }, { 0, NULL } @@ -4368,6 +5793,95 @@ dissect_ngap_CancelAllWarningMessages(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const per_sequence_t CandidateCellID_sequence[] = { + { &hf_ngap_candidateCellID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NR_CGI }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_CandidateCellID(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_ngap_CandidateCellID, CandidateCellID_sequence); + + return offset; +} + + + +static int +dissect_ngap_INTEGER_0_1007(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, FALSE); + + return offset; +} + + + +static int +dissect_ngap_INTEGER_0_3279165(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, 3279165U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t CandidatePCI_sequence[] = { + { &hf_ngap_candidatePCI_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_1007 }, + { &hf_ngap_candidateNRARFCN, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_3279165 }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_CandidatePCI(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_ngap_CandidatePCI, CandidatePCI_sequence); + + return offset; +} + + +static const value_string ngap_CandidateCell_Item_vals[] = { + { 0, "candidateCGI" }, + { 1, "candidatePCI" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t CandidateCell_Item_choice[] = { + { 0, &hf_ngap_candidateCGI , ASN1_NO_EXTENSIONS , dissect_ngap_CandidateCellID }, + { 1, &hf_ngap_candidatePCI , ASN1_NO_EXTENSIONS , dissect_ngap_CandidatePCI }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_CandidateCell_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_ngap_CandidateCell_Item, CandidateCell_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t CandidateCellList_sequence_of[1] = { + { &hf_ngap_CandidateCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_CandidateCell_Item }, +}; + +static int +dissect_ngap_CandidateCellList(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_ngap_CandidateCellList, CandidateCellList_sequence_of, + 1, maxnoofCandidateCells, FALSE); + + return offset; +} + + static const value_string ngap_CauseRadioNetwork_vals[] = { { 0, "unspecified" }, { 1, "txnrelocoverall-expiry" }, @@ -4417,6 +5931,8 @@ static const value_string ngap_CauseRadioNetwork_vals[] = { { 45, "n26-interface-not-available" }, { 46, "release-due-to-pre-emption" }, { 47, "multiple-location-reporting-reference-ID-instances" }, + { 48, "rsn-not-available-for-the-up" }, + { 49, "npn-access-denied" }, { 0, NULL } }; @@ -4426,7 +5942,7 @@ static value_string_ext ngap_CauseRadioNetwork_vals_ext = VALUE_STRING_EXT_INIT( static int dissect_ngap_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 45, NULL, TRUE, 3, NULL); + 45, NULL, TRUE, 5, NULL); return offset; } @@ -4537,6 +6053,36 @@ dissect_ngap_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot } +static const per_sequence_t CellCAGList_sequence_of[1] = { + { &hf_ngap_CellCAGList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_CAG_ID }, +}; + +static int +dissect_ngap_CellCAGList(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_ngap_CellCAGList, CellCAGList_sequence_of, + 1, maxnoofCAGSperCell, FALSE); + + return offset; +} + + +static const per_sequence_t Cell_CAGInformation_sequence[] = { + { &hf_ngap_nR_CGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NR_CGI }, + { &hf_ngap_cellCAGList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_CellCAGList }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_Cell_CAGInformation(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_ngap_Cell_CAGInformation, Cell_CAGInformation_sequence); + + return offset; +} + + static const per_sequence_t EUTRA_CGIList_sequence_of[1] = { { &hf_ngap_EUTRA_CGIList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, }; @@ -4622,6 +6168,37 @@ dissect_ngap_CellType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p } +static const value_string ngap_CEmodeBSupport_Indicator_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_ngap_CEmodeBSupport_Indicator(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 ngap_CEmodeBrestricted_vals[] = { + { 0, "restricted" }, + { 1, "not-restricted" }, + { 0, NULL } +}; + + +static int +dissect_ngap_CEmodeBrestricted(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_ngap_ExpectedActivityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4947,7 +6524,7 @@ dissect_ngap_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ngap_PeriodicRegistrationUpdateTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 709 "./asn1/ngap/ngap.cnf" +#line 830 "./asn1/ngap/ngap.cnf" tvbuff_t *val_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 8, 8, FALSE, NULL, 0, &val_tvb, NULL); @@ -5089,6 +6666,43 @@ dissect_ngap_COUNTValueForPDCP_SN18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } + +static int +dissect_ngap_CoverageEnhancementLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 910 "./asn1/ngap/ngap.cnf" + tvbuff_t *cov_enh_level_tvb; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &cov_enh_level_tvb); + + if (cov_enh_level_tvb && ngap_dissect_container) { + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_CoverageEnhancementLevel); + if ((ngap_is_nbiot_ue(actx->pinfo) && (ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_AUTOMATIC)) || + (ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_NBIOT)) { + TRY { + dissect_lte_rrc_UEPagingCoverageInformation_NB_PDU(cov_enh_level_tvb, actx->pinfo, subtree, NULL); + } + CATCH_BOUNDS_ERRORS { + show_exception(cov_enh_level_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE); + } + ENDTRY; + } else { + TRY { + dissect_lte_rrc_UEPagingCoverageInformation_PDU(cov_enh_level_tvb, actx->pinfo, subtree, NULL); + } + CATCH_BOUNDS_ERRORS { + show_exception(cov_enh_level_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE); + } + ENDTRY; + } + } + + + + return offset; +} + + static const value_string ngap_TypeOfError_vals[] = { { 0, "not-understood" }, { 1, "missing" }, @@ -5157,7 +6771,7 @@ dissect_ngap_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_ngap_DataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 326 "./asn1/ngap/ngap.cnf" +#line 361 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -5232,6 +6846,137 @@ dissect_ngap_DataForwardingResponseDRBList(tvbuff_t *tvb _U_, int offset _U_, as } +static const value_string ngap_T_dAPSIndicator_vals[] = { + { 0, "daps-ho-required" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_dAPSIndicator(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 DAPSRequestInfo_sequence[] = { + { &hf_ngap_dAPSIndicator , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_dAPSIndicator }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DAPSRequestInfo(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_ngap_DAPSRequestInfo, DAPSRequestInfo_sequence); + + return offset; +} + + +static const value_string ngap_T_dapsresponseindicator_vals[] = { + { 0, "daps-ho-accepted" }, + { 1, "daps-ho-not-accepted" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_dapsresponseindicator(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 DAPSResponseInfo_sequence[] = { + { &hf_ngap_dapsresponseindicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_dapsresponseindicator }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DAPSResponseInfo(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_ngap_DAPSResponseInfo, DAPSResponseInfo_sequence); + + return offset; +} + + +static const per_sequence_t DAPSResponseInfoItem_sequence[] = { + { &hf_ngap_dRB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DRB_ID }, + { &hf_ngap_dAPSResponseInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DAPSResponseInfo }, + { &hf_ngap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DAPSResponseInfoItem(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_ngap_DAPSResponseInfoItem, DAPSResponseInfoItem_sequence); + + return offset; +} + + +static const per_sequence_t DAPSResponseInfoList_sequence_of[1] = { + { &hf_ngap_DAPSResponseInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_DAPSResponseInfoItem }, +}; + +static int +dissect_ngap_DAPSResponseInfoList(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_ngap_DAPSResponseInfoList, DAPSResponseInfoList_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + + +static int +dissect_ngap_E_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t DataForwardingResponseERABListItem_sequence[] = { + { &hf_ngap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_E_RAB_ID }, + { &hf_ngap_dLForwardingUP_TNLInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_UPTransportLayerInformation }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DataForwardingResponseERABListItem(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_ngap_DataForwardingResponseERABListItem, DataForwardingResponseERABListItem_sequence); + + return offset; +} + + +static const per_sequence_t DataForwardingResponseERABList_sequence_of[1] = { + { &hf_ngap_DataForwardingResponseERABList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_DataForwardingResponseERABListItem }, +}; + +static int +dissect_ngap_DataForwardingResponseERABList(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_ngap_DataForwardingResponseERABList, DataForwardingResponseERABList_sequence_of, + 1, maxnoofE_RABs, FALSE); + + return offset; +} + + static const value_string ngap_DelayCritical_vals[] = { { 0, "delay-critical" }, { 1, "non-delay-critical" }, @@ -5248,6 +6993,31 @@ dissect_ngap_DelayCritical(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } + +static int +dissect_ngap_DL_NAS_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t DL_CP_SecurityInformation_sequence[] = { + { &hf_ngap_dl_NAS_MAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DL_NAS_MAC }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DL_CP_SecurityInformation(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_ngap_DL_CP_SecurityInformation, DL_CP_SecurityInformation_sequence); + + return offset; +} + + static const value_string ngap_DLForwarding_vals[] = { { 0, "dl-forwarding-proposed" }, { 0, NULL } @@ -5496,9 +7266,9 @@ dissect_ngap_PriorityLevelQos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int -dissect_ngap_PacketDelayBudget(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_ngap_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, 1023U, NULL, TRUE); + 0U, 255U, NULL, TRUE); return offset; } @@ -5506,66 +7276,127 @@ dissect_ngap_PacketDelayBudget(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int -dissect_ngap_INTEGER_0_9_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_ngap_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, 9U, NULL, TRUE); + 0U, 4095U, NULL, TRUE); return offset; } -static const per_sequence_t PacketErrorRate_sequence[] = { - { &hf_ngap_pERScalar , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_9_ }, - { &hf_ngap_pERExponent , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_INTEGER_0_9_ }, +static const per_sequence_t Dynamic5QIDescriptor_sequence[] = { + { &hf_ngap_priorityLevelQos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PriorityLevelQos }, + { &hf_ngap_packetDelayBudget, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PacketDelayBudget }, + { &hf_ngap_packetErrorRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PacketErrorRate }, + { &hf_ngap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_FiveQI }, + { &hf_ngap_delayCritical , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_DelayCritical }, + { &hf_ngap_averagingWindow, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_AveragingWindow }, + { &hf_ngap_maximumDataBurstVolume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_MaximumDataBurstVolume }, { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; static int -dissect_ngap_PacketErrorRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_ngap_Dynamic5QIDescriptor(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_ngap_PacketErrorRate, PacketErrorRate_sequence); + ett_ngap_Dynamic5QIDescriptor, Dynamic5QIDescriptor_sequence); return offset; } +static const per_sequence_t DRBsSubjectToEarlyStatusTransfer_Item_sequence[] = { + { &hf_ngap_dRB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DRB_ID }, + { &hf_ngap_firstDLCOUNT , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DRBStatusDL }, + { &hf_ngap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; static int -dissect_ngap_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); +dissect_ngap_DRBsSubjectToEarlyStatusTransfer_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_ngap_DRBsSubjectToEarlyStatusTransfer_Item, DRBsSubjectToEarlyStatusTransfer_Item_sequence); return offset; } +static const per_sequence_t DRBsSubjectToEarlyStatusTransfer_List_sequence_of[1] = { + { &hf_ngap_DRBsSubjectToEarlyStatusTransfer_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_DRBsSubjectToEarlyStatusTransfer_Item }, +}; static int -dissect_ngap_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, 4095U, NULL, TRUE); +dissect_ngap_DRBsSubjectToEarlyStatusTransfer_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_ngap_DRBsSubjectToEarlyStatusTransfer_List, DRBsSubjectToEarlyStatusTransfer_List_sequence_of, + 1, maxnoofDRBs, FALSE); return offset; } -static const per_sequence_t Dynamic5QIDescriptor_sequence[] = { - { &hf_ngap_priorityLevelQos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PriorityLevelQos }, - { &hf_ngap_packetDelayBudget, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PacketDelayBudget }, - { &hf_ngap_packetErrorRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PacketErrorRate }, - { &hf_ngap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_FiveQI }, - { &hf_ngap_delayCritical , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_DelayCritical }, - { &hf_ngap_averagingWindow, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_AveragingWindow }, - { &hf_ngap_maximumDataBurstVolume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_MaximumDataBurstVolume }, +static const per_sequence_t FirstDLCount_sequence[] = { + { &hf_ngap_dRBsSubjectToEarlyStatusTransfer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_DRBsSubjectToEarlyStatusTransfer_List }, + { &hf_ngap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_FirstDLCount(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_ngap_FirstDLCount, FirstDLCount_sequence); + + return offset; +} + + +static const value_string ngap_ProcedureStageChoice_vals[] = { + { 0, "first-dl-count" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t ProcedureStageChoice_choice[] = { + { 0, &hf_ngap_first_dl_count , ASN1_NO_EXTENSIONS , dissect_ngap_FirstDLCount }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_ProcedureStageChoice(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_ngap_ProcedureStageChoice, ProcedureStageChoice_choice, + NULL); + + return offset; +} + + +static const per_sequence_t EarlyStatusTransfer_TransparentContainer_sequence[] = { + { &hf_ngap_procedureStage , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProcedureStageChoice }, { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; static int -dissect_ngap_Dynamic5QIDescriptor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_ngap_EarlyStatusTransfer_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_ngap_Dynamic5QIDescriptor, Dynamic5QIDescriptor_sequence); + ett_ngap_EarlyStatusTransfer_TransparentContainer, EarlyStatusTransfer_TransparentContainer_sequence); + + return offset; +} + + +static const value_string ngap_EDT_Session_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_EDT_Session(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; } @@ -5648,8 +7479,71 @@ dissect_ngap_EmergencyFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int +dissect_ngap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 28, 28, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string ngap_ENB_ID_vals[] = { + { 0, "macroENB-ID" }, + { 1, "homeENB-ID" }, + { 2, "short-macroENB-ID" }, + { 3, "long-macroENB-ID" }, + { 4, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t ENB_ID_choice[] = { + { 0, &hf_ngap_macroENB_ID , ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_20 }, + { 1, &hf_ngap_homeENB_ID , ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_28 }, + { 2, &hf_ngap_short_macroENB_ID, ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_18 }, + { 3, &hf_ngap_long_macroENB_ID, ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_21 }, + { 4, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_ENB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_ngap_ENB_ID, ENB_ID_choice, + NULL); + + return offset; +} + + +static const value_string ngap_Enhanced_CoverageRestriction_vals[] = { + { 0, "restricted" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Enhanced_CoverageRestriction(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 int +dissect_ngap_Extended_ConnectedTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + + +static int dissect_ngap_EN_DCSONConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 731 "./asn1/ngap/ngap.cnf" +#line 852 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -5669,7 +7563,7 @@ dissect_ngap_EN_DCSONConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_ngap_PortNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 476 "./asn1/ngap/ngap.cnf" +#line 575 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, ¶meter_tvb); @@ -5700,6 +7594,22 @@ dissect_ngap_EndpointIPAddressAndPort(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string ngap_EndIndication_vals[] = { + { 0, "no-further-data" }, + { 1, "further-data-exists" }, + { 0, NULL } +}; + + +static int +dissect_ngap_EndIndication(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 EquivalentPLMNs_sequence_of[1] = { { &hf_ngap_EquivalentPLMNs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, }; @@ -5717,7 +7627,7 @@ dissect_ngap_EquivalentPLMNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ngap_EPS_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 349 "./asn1/ngap/ngap.cnf" +#line 384 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, ¶meter_tvb); @@ -5748,16 +7658,6 @@ dissect_ngap_EPS_TAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } - -static int -dissect_ngap_E_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 15U, NULL, TRUE); - - return offset; -} - - static const per_sequence_t E_RABInformationItem_sequence[] = { { &hf_ngap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_E_RAB_ID }, { &hf_ngap_dLForwarding , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_DLForwarding }, @@ -5805,7 +7705,7 @@ dissect_ngap_EUTRA_CGIListForWarning(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_ngap_EUTRAencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 634 "./asn1/ngap/ngap.cnf" +#line 755 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -5831,7 +7731,7 @@ dissect_ngap_EUTRAencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_ngap_EUTRAintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 649 "./asn1/ngap/ngap.cnf" +#line 770 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -5876,6 +7776,321 @@ dissect_ngap_EventType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int +dissect_ngap_ExtendedPacketDelayBudget(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, 65535U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_ngap_T_primaryRATRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 942 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, TRUE, NULL, 0, ¶meter_tvb, NULL); + + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_RATRestrictionInformation_e_UTRA, + &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, + &hf_ngap_RATRestrictionInformation_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_RATRestrictionInformation); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + + + + return offset; +} + + + +static int +dissect_ngap_T_secondaryRATRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 957 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, TRUE, NULL, 0, ¶meter_tvb, NULL); + + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_RATRestrictionInformation_e_UTRA, + &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, + &hf_ngap_RATRestrictionInformation_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_RATRestrictionInformation); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + + + + return offset; +} + + +static const per_sequence_t ExtendedRATRestrictionInformation_sequence[] = { + { &hf_ngap_primaryRATRestriction, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_primaryRATRestriction }, + { &hf_ngap_secondaryRATRestriction, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_secondaryRATRestriction }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_ExtendedRATRestrictionInformation(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_ngap_ExtendedRATRestrictionInformation, ExtendedRATRestrictionInformation_sequence); + + return offset; +} + + + +static int +dissect_ngap_ExtendedRNC_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 4096U, 65535U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ExtendedSliceSupportList_sequence_of[1] = { + { &hf_ngap_ExtendedSliceSupportList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_SliceSupportItem }, +}; + +static int +dissect_ngap_ExtendedSliceSupportList(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_ngap_ExtendedSliceSupportList, ExtendedSliceSupportList_sequence_of, + 1, maxnoofExtSliceItems, FALSE); + + return offset; +} + + +static const value_string ngap_T_outOfCoverage_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_outOfCoverage(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 int +dissect_ngap_Threshold_RSRP(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, 127U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_ngap_Threshold_RSRQ(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, 127U, NULL, FALSE); + + return offset; +} + + +static const value_string ngap_MeasurementThresholdL1LoggedMDT_vals[] = { + { 0, "threshold-RSRP" }, + { 1, "threshold-RSRQ" }, + { 0, NULL } +}; + +static const per_choice_t MeasurementThresholdL1LoggedMDT_choice[] = { + { 0, &hf_ngap_threshold_RSRP , ASN1_EXTENSION_ROOT , dissect_ngap_Threshold_RSRP }, + { 1, &hf_ngap_threshold_RSRQ , ASN1_EXTENSION_ROOT , dissect_ngap_Threshold_RSRQ }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_MeasurementThresholdL1LoggedMDT(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_ngap_MeasurementThresholdL1LoggedMDT, MeasurementThresholdL1LoggedMDT_choice, + NULL); + + return offset; +} + + + +static int +dissect_ngap_Hysteresis(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, 30U, NULL, FALSE); + + return offset; +} + + +static const value_string ngap_TimeToTrigger_vals[] = { + { 0, "ms0" }, + { 1, "ms40" }, + { 2, "ms64" }, + { 3, "ms80" }, + { 4, "ms100" }, + { 5, "ms128" }, + { 6, "ms160" }, + { 7, "ms256" }, + { 8, "ms320" }, + { 9, "ms480" }, + { 10, "ms512" }, + { 11, "ms640" }, + { 12, "ms1024" }, + { 13, "ms1280" }, + { 14, "ms2560" }, + { 15, "ms5120" }, + { 0, NULL } +}; + + +static int +dissect_ngap_TimeToTrigger(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t EventL1LoggedMDTConfig_sequence[] = { + { &hf_ngap_l1Threshold , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MeasurementThresholdL1LoggedMDT }, + { &hf_ngap_hysteresis , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Hysteresis }, + { &hf_ngap_timeToTrigger , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TimeToTrigger }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_EventL1LoggedMDTConfig(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_ngap_EventL1LoggedMDTConfig, EventL1LoggedMDTConfig_sequence); + + return offset; +} + + +static const value_string ngap_EventTrigger_vals[] = { + { 0, "outOfCoverage" }, + { 1, "eventL1LoggedMDTConfig" }, + { 0, NULL } +}; + +static const per_choice_t EventTrigger_choice[] = { + { 0, &hf_ngap_outOfCoverage , ASN1_EXTENSION_ROOT , dissect_ngap_T_outOfCoverage }, + { 1, &hf_ngap_eventL1LoggedMDTConfig, ASN1_EXTENSION_ROOT , dissect_ngap_EventL1LoggedMDTConfig }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_EventTrigger(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_ngap_EventTrigger, EventTrigger_choice, + NULL); + + return offset; +} + + + +static int +dissect_ngap_NRUERLFReportContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1037 "./asn1/ngap/ngap.cnf" + tvbuff_t *nr_ue_rlc_report_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &nr_ue_rlc_report_tvb); + + if (nr_ue_rlc_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NRUERLFReportContainer); + dissect_nr_rrc_nr_RLF_Report_r16_PDU(nr_ue_rlc_report_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + + +static int +dissect_ngap_LTEUERLFReportContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1029 "./asn1/ngap/ngap.cnf" + tvbuff_t *lte_ue_rlf_report_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, <e_ue_rlf_report_tvb); + + if (lte_ue_rlf_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_LTEUERLFReportContainer); + dissect_lte_rrc_RLF_Report_r9_PDU(lte_ue_rlf_report_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + +static const value_string ngap_UERLFReportContainer_vals[] = { + { 0, "nR" }, + { 1, "lTE" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t UERLFReportContainer_choice[] = { + { 0, &hf_ngap_nR_01 , ASN1_NO_EXTENSIONS , dissect_ngap_NRUERLFReportContainer }, + { 1, &hf_ngap_lTE , ASN1_NO_EXTENSIONS , dissect_ngap_LTEUERLFReportContainer }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_UERLFReportContainer(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_ngap_UERLFReportContainer, UERLFReportContainer_choice, + NULL); + + return offset; +} + + +static const per_sequence_t FailureIndication_sequence[] = { + { &hf_ngap_uERLFReportContainer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_UERLFReportContainer }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_FailureIndication(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_ngap_FailureIndication, FailureIndication_sequence); + + return offset; +} + + + +static int dissect_ngap_FiveG_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, NULL); @@ -5945,6 +8160,86 @@ dissect_ngap_ForbiddenAreaInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const per_sequence_t GlobalENB_ID_sequence[] = { + { &hf_ngap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_eNB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ENB_ID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_GlobalENB_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_ngap_GlobalENB_ID, GlobalENB_ID_sequence); + + return offset; +} + + +static const per_sequence_t IntersystemSONeNBID_sequence[] = { + { &hf_ngap_globaleNBID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalENB_ID }, + { &hf_ngap_selectedEPSTAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_EPS_TAI }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONeNBID(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_ngap_IntersystemSONeNBID, IntersystemSONeNBID_sequence); + + return offset; +} + + +static const per_sequence_t IntersystemSONNGRANnodeID_sequence[] = { + { &hf_ngap_globalRANNodeID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalRANNodeID }, + { &hf_ngap_selectedTAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONNGRANnodeID(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_ngap_IntersystemSONNGRANnodeID, IntersystemSONNGRANnodeID_sequence); + + return offset; +} + + +static const per_sequence_t FromEUTRANtoNGRAN_sequence[] = { + { &hf_ngap_sourceeNBID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONeNBID }, + { &hf_ngap_targetNGRANnodeID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONNGRANnodeID }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_FromEUTRANtoNGRAN(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_ngap_FromEUTRANtoNGRAN, FromEUTRANtoNGRAN_sequence); + + return offset; +} + + +static const per_sequence_t FromNGRANtoEUTRAN_sequence[] = { + { &hf_ngap_sourceNGRANnodeID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONNGRANnodeID }, + { &hf_ngap_targeteNBID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONeNBID }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_FromNGRANtoEUTRAN(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_ngap_FromNGRANtoEUTRAN, FromNGRANtoEUTRAN_sequence); + + return offset; +} + + static const value_string ngap_NotificationControl_vals[] = { { 0, "notification-requested" }, { 0, NULL } @@ -5991,6 +8286,172 @@ dissect_ngap_GBR_QosInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } + +static int +dissect_ngap_GlobalLineIdentity(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 ngap_LineType_vals[] = { + { 0, "dsl" }, + { 1, "pon" }, + { 0, NULL } +}; + + +static int +dissect_ngap_LineType(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 GlobalLine_ID_sequence[] = { + { &hf_ngap_globalLineIdentity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalLineIdentity }, + { &hf_ngap_lineType , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_LineType }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_GlobalLine_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_ngap_GlobalLine_ID, GlobalLine_ID_sequence); + + return offset; +} + + + +static int +dissect_ngap_BIT_STRING_SIZE_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, + 32, 32, TRUE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string ngap_TNGF_ID_vals[] = { + { 0, "tNGF-ID" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t TNGF_ID_choice[] = { + { 0, &hf_ngap_tNGF_ID_01 , ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_32_ }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_TNGF_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_ngap_TNGF_ID, TNGF_ID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GlobalTNGF_ID_sequence[] = { + { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_tNGF_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TNGF_ID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_GlobalTNGF_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_ngap_GlobalTNGF_ID, GlobalTNGF_ID_sequence); + + return offset; +} + + +static const value_string ngap_TWIF_ID_vals[] = { + { 0, "tWIF-ID" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t TWIF_ID_choice[] = { + { 0, &hf_ngap_tWIF_ID_01 , ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_32_ }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_TWIF_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_ngap_TWIF_ID, TWIF_ID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GlobalTWIF_ID_sequence[] = { + { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_tWIF_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TWIF_ID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_GlobalTWIF_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_ngap_GlobalTWIF_ID, GlobalTWIF_ID_sequence); + + return offset; +} + + +static const value_string ngap_W_AGF_ID_vals[] = { + { 0, "w-AGF-ID" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t W_AGF_ID_choice[] = { + { 0, &hf_ngap_w_AGF_ID_01 , ASN1_NO_EXTENSIONS , dissect_ngap_BIT_STRING_SIZE_16 }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_W_AGF_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_ngap_W_AGF_ID, W_AGF_ID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GlobalW_AGF_ID_sequence[] = { + { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_w_AGF_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_W_AGF_ID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_GlobalW_AGF_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_ngap_GlobalW_AGF_ID, GlobalW_AGF_ID_sequence); + + return offset; +} + + static const per_sequence_t GUAMI_sequence[] = { { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, { &hf_ngap_aMFRegionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_AMFRegionID }, @@ -6009,6 +8470,22 @@ dissect_ngap_GUAMI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot } +static const value_string ngap_GUAMIType_vals[] = { + { 0, "native" }, + { 1, "mapped" }, + { 0, NULL } +}; + + +static int +dissect_ngap_GUAMIType(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 QosFlowToBeForwardedItem_sequence[] = { { &hf_ngap_qosFlowIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_QosFlowIdentifier }, { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, @@ -6202,16 +8679,17 @@ static const value_string ngap_HandoverType_vals[] = { { intra5gs, "intra5gs" }, { fivegs_to_eps, "fivegs-to-eps" }, { eps_to_5gs, "eps-to-5gs" }, + { fivegs_to_utran, "fivegs-to-utran" }, { 0, NULL } }; static int dissect_ngap_HandoverType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 255 "./asn1/ngap/ngap.cnf" +#line 263 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 3, &ngap_data->handover_type_value, TRUE, 0, NULL); + 3, &ngap_data->handover_type_value, TRUE, 1, NULL); @@ -6220,6 +8698,112 @@ dissect_ngap_HandoverType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } + +static int +dissect_ngap_HFCNode_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const value_string ngap_T_handoverReportType_vals[] = { + { 0, "ho-too-early" }, + { 1, "ho-to-wrong-cell" }, + { 2, "intersystem-ping-pong" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_handoverReportType(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_ngap_MobilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t HOReport_sequence[] = { + { &hf_ngap_handoverReportType, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_T_handoverReportType }, + { &hf_ngap_handoverCause , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_Cause }, + { &hf_ngap_sourcecellCGI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NGRAN_CGI }, + { &hf_ngap_targetcellCGI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NGRAN_CGI }, + { &hf_ngap_reestablishmentcellCGI, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_NGRAN_CGI }, + { &hf_ngap_sourcecellC_RNTI, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_BIT_STRING_SIZE_16 }, + { &hf_ngap_targetcellinE_UTRAN, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_EUTRA_CGI }, + { &hf_ngap_mobilityInformation, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_MobilityInformation }, + { &hf_ngap_uERLFReportContainer, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_UERLFReportContainer }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_HOReport(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_ngap_HOReport, HOReport_sequence); + + return offset; +} + + +static const value_string ngap_IAB_Authorized_vals[] = { + { 0, "authorized" }, + { 1, "not-authorized" }, + { 0, NULL } +}; + + +static int +dissect_ngap_IAB_Authorized(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 ngap_IAB_Supported_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_IAB_Supported(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 ngap_IABNodeIndication_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_IABNodeIndication(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 ngap_IMSVoiceSupportIndicator_vals[] = { { 0, "supported" }, { 1, "not-supported" }, @@ -6326,7 +8910,7 @@ dissect_ngap_IntegrityProtectionIndication(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_ngap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 456 "./asn1/ngap/ngap.cnf" +#line 555 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -6353,6 +8937,812 @@ dissect_ngap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int +dissect_ngap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 989 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); + + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_MeasurementsToActivate_M1, + &hf_ngap_MeasurementsToActivate_M2, + &hf_ngap_MeasurementsToActivate_M4, + &hf_ngap_MeasurementsToActivate_M5, + &hf_ngap_MeasurementsToActivate_M6, + &hf_ngap_MeasurementsToActivate_M7, + &hf_ngap_MeasurementsToActivate_M1_from_event, + &hf_ngap_MeasurementsToActivate_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MeasurementsToActivate); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + + + + return offset; +} + + +static const value_string ngap_M1ReportingTrigger_vals[] = { + { 0, "periodic" }, + { 1, "a2eventtriggered" }, + { 2, "a2eventtriggered-periodic" }, + { 0, NULL } +}; + + +static int +dissect_ngap_M1ReportingTrigger(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_ngap_Threshold_SINR(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, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t M1ThresholdEventA2_sequence[] = { + { &hf_ngap_threshold_RSRP , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Threshold_RSRP }, + { &hf_ngap_threshold_RSRQ , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Threshold_RSRQ }, + { &hf_ngap_threshold_SINR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Threshold_SINR }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M1ThresholdEventA2(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_ngap_M1ThresholdEventA2, M1ThresholdEventA2_sequence); + + return offset; +} + + +static const value_string ngap_ReportIntervalMDT_vals[] = { + { 0, "ms120" }, + { 1, "ms240" }, + { 2, "ms480" }, + { 3, "ms640" }, + { 4, "ms1024" }, + { 5, "ms2048" }, + { 6, "ms5120" }, + { 7, "ms10240" }, + { 8, "min1" }, + { 9, "min6" }, + { 10, "min12" }, + { 11, "min30" }, + { 12, "min60" }, + { 0, NULL } +}; + + +static int +dissect_ngap_ReportIntervalMDT(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, + 13, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string ngap_ReportAmountMDT_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "rinfinity" }, + { 0, NULL } +}; + + +static int +dissect_ngap_ReportAmountMDT(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t M1PeriodicReporting_sequence[] = { + { &hf_ngap_reportInterval , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ReportIntervalMDT }, + { &hf_ngap_reportAmount , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ReportAmountMDT }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M1PeriodicReporting(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_ngap_M1PeriodicReporting, M1PeriodicReporting_sequence); + + return offset; +} + + +static const per_sequence_t M1Configuration_sequence[] = { + { &hf_ngap_m1reportingTrigger, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_M1ReportingTrigger }, + { &hf_ngap_m1thresholdEventA2, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M1ThresholdEventA2 }, + { &hf_ngap_m1periodicReporting, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M1PeriodicReporting }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M1Configuration(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_ngap_M1Configuration, M1Configuration_sequence); + + return offset; +} + + +static const value_string ngap_M4period_vals[] = { + { 0, "ms1024" }, + { 1, "ms2048" }, + { 2, "ms5120" }, + { 3, "ms10240" }, + { 4, "min1" }, + { 0, NULL } +}; + + +static int +dissect_ngap_M4period(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_Links_to_log_vals[] = { + { 0, "uplink" }, + { 1, "downlink" }, + { 2, "both-uplink-and-downlink" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Links_to_log(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t M4Configuration_sequence[] = { + { &hf_ngap_m4period , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_M4period }, + { &hf_ngap_m4_links_to_log, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Links_to_log }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M4Configuration(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_ngap_M4Configuration, M4Configuration_sequence); + + return offset; +} + + +static const value_string ngap_M5period_vals[] = { + { 0, "ms1024" }, + { 1, "ms2048" }, + { 2, "ms5120" }, + { 3, "ms10240" }, + { 4, "min1" }, + { 0, NULL } +}; + + +static int +dissect_ngap_M5period(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t M5Configuration_sequence[] = { + { &hf_ngap_m5period , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_M5period }, + { &hf_ngap_m5_links_to_log, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Links_to_log }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M5Configuration(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_ngap_M5Configuration, M5Configuration_sequence); + + return offset; +} + + +static const value_string ngap_M6report_Interval_vals[] = { + { 0, "ms120" }, + { 1, "ms240" }, + { 2, "ms640" }, + { 3, "ms1024" }, + { 4, "ms2048" }, + { 5, "ms5120" }, + { 6, "ms10240" }, + { 7, "ms20480" }, + { 8, "ms40960" }, + { 9, "min1" }, + { 10, "min6" }, + { 11, "min12" }, + { 12, "min30" }, + { 0, NULL } +}; + + +static int +dissect_ngap_M6report_Interval(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, + 13, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t M6Configuration_sequence[] = { + { &hf_ngap_m6report_Interval, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_M6report_Interval }, + { &hf_ngap_m6_links_to_log, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Links_to_log }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M6Configuration(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_ngap_M6Configuration, M6Configuration_sequence); + + return offset; +} + + + +static int +dissect_ngap_M7period(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, 60U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t M7Configuration_sequence[] = { + { &hf_ngap_m7period , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_M7period }, + { &hf_ngap_m7_links_to_log, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Links_to_log }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_M7Configuration(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_ngap_M7Configuration, M7Configuration_sequence); + + return offset; +} + + +static const value_string ngap_WLANMeasConfig_vals[] = { + { 0, "setup" }, + { 0, NULL } +}; + + +static int +dissect_ngap_WLANMeasConfig(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 int +dissect_ngap_WLANName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1059 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, + 1, 32, FALSE, ¶meter_tvb); + + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA); + + + return offset; +} + + +static const per_sequence_t WLANMeasConfigNameList_sequence_of[1] = { + { &hf_ngap_WLANMeasConfigNameList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_WLANName }, +}; + +static int +dissect_ngap_WLANMeasConfigNameList(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_ngap_WLANMeasConfigNameList, WLANMeasConfigNameList_sequence_of, + 1, maxnoofWLANName, FALSE); + + return offset; +} + + +static const value_string ngap_T_wlan_rssi_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_wlan_rssi(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 ngap_T_wlan_rtt_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_wlan_rtt(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 WLANMeasurementConfiguration_sequence[] = { + { &hf_ngap_wlanMeasConfig , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_WLANMeasConfig }, + { &hf_ngap_wlanMeasConfigNameList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_WLANMeasConfigNameList }, + { &hf_ngap_wlan_rssi , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_wlan_rssi }, + { &hf_ngap_wlan_rtt , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_wlan_rtt }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_WLANMeasurementConfiguration(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_ngap_WLANMeasurementConfiguration, WLANMeasurementConfiguration_sequence); + + return offset; +} + + + +static int +dissect_ngap_MDT_Location_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1008 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); + + if (parameter_tvb) { + static int * const fields[] = { + &hf_ngap_MDT_Location_Information_GNSS, + &hf_ngap_MDT_Location_Information_reserved, + NULL + }; + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MDT_Location_Information); + proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); + } + + + + return offset; +} + + +static const per_sequence_t MDT_Location_Info_sequence[] = { + { &hf_ngap_mDT_Location_Infoormation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDT_Location_Information }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_MDT_Location_Info(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_ngap_MDT_Location_Info, MDT_Location_Info_sequence); + + return offset; +} + + +static const value_string ngap_SensorMeasConfig_vals[] = { + { 0, "setup" }, + { 0, NULL } +}; + + +static int +dissect_ngap_SensorMeasConfig(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 ngap_T_uncompensattedBarometericConfig_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_uncompensattedBarometericConfig(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 ngap_T_ueSpeedConfig_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_ueSpeedConfig(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 ngap_T_ueOrientationConfig_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_ueOrientationConfig(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 ngap_SensorNameConfig_vals[] = { + { 0, "uncompensattedBarometericConfig" }, + { 1, "ueSpeedConfig" }, + { 2, "ueOrientationConfig" }, + { 0, NULL } +}; + +static const per_choice_t SensorNameConfig_choice[] = { + { 0, &hf_ngap_uncompensattedBarometericConfig, ASN1_EXTENSION_ROOT , dissect_ngap_T_uncompensattedBarometericConfig }, + { 1, &hf_ngap_ueSpeedConfig , ASN1_EXTENSION_ROOT , dissect_ngap_T_ueSpeedConfig }, + { 2, &hf_ngap_ueOrientationConfig, ASN1_EXTENSION_ROOT , dissect_ngap_T_ueOrientationConfig }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_SensorNameConfig(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_ngap_SensorNameConfig, SensorNameConfig_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SensorMeasConfigName_sequence_of[1] = { + { &hf_ngap_SensorMeasConfigName_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_SensorNameConfig }, +}; + +static int +dissect_ngap_SensorMeasConfigName(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_ngap_SensorMeasConfigName, SensorMeasConfigName_sequence_of, + 1, maxnoofSensorName, FALSE); + + return offset; +} + + +static const per_sequence_t SensorMeasurementConfiguration_sequence[] = { + { &hf_ngap_sensorMeasConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_SensorMeasConfig }, + { &hf_ngap_sensorMeasConfigName, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_SensorMeasConfigName }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_SensorMeasurementConfiguration(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_ngap_SensorMeasurementConfiguration, SensorMeasurementConfiguration_sequence); + + return offset; +} + + +static const per_sequence_t ImmediateMDTNr_sequence[] = { + { &hf_ngap_measurementsToActivate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MeasurementsToActivate }, + { &hf_ngap_m1Configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M1Configuration }, + { &hf_ngap_m4Configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M4Configuration }, + { &hf_ngap_m5Configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M5Configuration }, + { &hf_ngap_m6Configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M6Configuration }, + { &hf_ngap_m7Configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_M7Configuration }, + { &hf_ngap_bluetoothMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BluetoothMeasurementConfiguration }, + { &hf_ngap_wLANMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_WLANMeasurementConfiguration }, + { &hf_ngap_mDT_Location_Info, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_MDT_Location_Info }, + { &hf_ngap_sensorMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_SensorMeasurementConfiguration }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_ImmediateMDTNr(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_ngap_ImmediateMDTNr, ImmediateMDTNr_sequence); + + return offset; +} + + +static const per_sequence_t InterSystemFailureIndication_sequence[] = { + { &hf_ngap_uERLFReportContainer, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_UERLFReportContainer }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_InterSystemFailureIndication(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_ngap_InterSystemFailureIndication, InterSystemFailureIndication_sequence); + + return offset; +} + + +static const value_string ngap_IntersystemSONTransferType_vals[] = { + { 0, "fromEUTRANtoNGRAN" }, + { 1, "fromNGRANtoEUTRAN" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t IntersystemSONTransferType_choice[] = { + { 0, &hf_ngap_fromEUTRANtoNGRAN, ASN1_NO_EXTENSIONS , dissect_ngap_FromEUTRANtoNGRAN }, + { 1, &hf_ngap_fromNGRANtoEUTRAN, ASN1_NO_EXTENSIONS , dissect_ngap_FromNGRANtoEUTRAN }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONTransferType(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_ngap_IntersystemSONTransferType, IntersystemSONTransferType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TooearlyIntersystemHO_sequence[] = { + { &hf_ngap_sourcecellID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, + { &hf_ngap_failurecellID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NGRAN_CGI }, + { &hf_ngap_uERLFReportContainer, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_UERLFReportContainer }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TooearlyIntersystemHO(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_ngap_TooearlyIntersystemHO, TooearlyIntersystemHO_sequence); + + return offset; +} + + +static const value_string ngap_T_earlyIRATHO_vals[] = { + { 0, "no" }, + { 1, "yes" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_earlyIRATHO(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IntersystemUnnecessaryHO_sequence[] = { + { &hf_ngap_sourcecellID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, + { &hf_ngap_failurecellID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NGRAN_CGI }, + { &hf_ngap_earlyIRATHO , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_T_earlyIRATHO }, + { &hf_ngap_candidateCellList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_CandidateCellList }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_IntersystemUnnecessaryHO(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_ngap_IntersystemUnnecessaryHO, IntersystemUnnecessaryHO_sequence); + + return offset; +} + + +static const value_string ngap_InterSystemHandoverReportType_vals[] = { + { 0, "tooearlyIntersystemHO" }, + { 1, "intersystemUnnecessaryHO" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t InterSystemHandoverReportType_choice[] = { + { 0, &hf_ngap_tooearlyIntersystemHO, ASN1_NO_EXTENSIONS , dissect_ngap_TooearlyIntersystemHO }, + { 1, &hf_ngap_intersystemUnnecessaryHO, ASN1_NO_EXTENSIONS , dissect_ngap_IntersystemUnnecessaryHO }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_InterSystemHandoverReportType(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_ngap_InterSystemHandoverReportType, InterSystemHandoverReportType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t InterSystemHOReport_sequence[] = { + { &hf_ngap_handoverReportType_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_InterSystemHandoverReportType }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_InterSystemHOReport(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_ngap_InterSystemHOReport, InterSystemHOReport_sequence); + + return offset; +} + + +static const value_string ngap_IntersystemSONInformationReport_vals[] = { + { 0, "hOReportInformation" }, + { 1, "failureIndicationInformation" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t IntersystemSONInformationReport_choice[] = { + { 0, &hf_ngap_hOReportInformation, ASN1_NO_EXTENSIONS , dissect_ngap_InterSystemHOReport }, + { 1, &hf_ngap_failureIndicationInformation, ASN1_NO_EXTENSIONS , dissect_ngap_InterSystemFailureIndication }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONInformationReport(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_ngap_IntersystemSONInformationReport, IntersystemSONInformationReport_choice, + NULL); + + return offset; +} + + +static const value_string ngap_IntersystemSONInformation_vals[] = { + { 0, "intersystemSONInformationReport" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t IntersystemSONInformation_choice[] = { + { 0, &hf_ngap_intersystemSONInformationReport, ASN1_NO_EXTENSIONS , dissect_ngap_IntersystemSONInformationReport }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONInformation(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_ngap_IntersystemSONInformation, IntersystemSONInformation_choice, + NULL); + + return offset; +} + + +static const per_sequence_t IntersystemSONConfigurationTransfer_sequence[] = { + { &hf_ngap_transferType , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONTransferType }, + { &hf_ngap_intersystemSONInformation, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_IntersystemSONInformation }, + { &hf_ngap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_IntersystemSONConfigurationTransfer(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_ngap_IntersystemSONConfigurationTransfer, IntersystemSONConfigurationTransfer_sequence); + + return offset; +} + + + +static int +dissect_ngap_LAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 974 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, + 2, 2, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN); + } + + + + return offset; +} + + +static const per_sequence_t LAI_sequence[] = { + { &hf_ngap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, + { &hf_ngap_lAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_LAC }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_LAI(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_ngap_LAI, LAI_sequence); + + return offset; +} + + + +static int dissect_ngap_TimeUEStayedInCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 4095U, NULL, FALSE); @@ -6393,7 +9783,7 @@ dissect_ngap_LastVisitedNGRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_ngap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 667 "./asn1/ngap/ngap.cnf" +#line 788 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -6413,7 +9803,7 @@ dissect_ngap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_ngap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 676 "./asn1/ngap/ngap.cnf" +#line 797 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -6433,7 +9823,7 @@ dissect_ngap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_ngap_LastVisitedGERANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 685 "./asn1/ngap/ngap.cnf" +#line 806 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -6541,6 +9931,172 @@ dissect_ngap_LocationReportingRequestType(tvbuff_t *tvb _U_, int offset _U_, asn } +static const value_string ngap_LoggingInterval_vals[] = { + { 0, "ms320" }, + { 1, "ms640" }, + { 2, "ms1280" }, + { 3, "ms2560" }, + { 4, "ms5120" }, + { 5, "ms10240" }, + { 6, "ms20480" }, + { 7, "ms30720" }, + { 8, "ms40960" }, + { 9, "ms61440" }, + { 10, "infinity" }, + { 0, NULL } +}; + + +static int +dissect_ngap_LoggingInterval(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, + 11, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_LoggingDuration_vals[] = { + { 0, "m10" }, + { 1, "m20" }, + { 2, "m40" }, + { 3, "m60" }, + { 4, "m90" }, + { 5, "m120" }, + { 0, NULL } +}; + + +static int +dissect_ngap_LoggingDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_LoggedMDTTrigger_vals[] = { + { 0, "periodical" }, + { 1, "eventTrigger" }, + { 0, NULL } +}; + +static const per_choice_t LoggedMDTTrigger_choice[] = { + { 0, &hf_ngap_periodical , ASN1_EXTENSION_ROOT , dissect_ngap_NULL }, + { 1, &hf_ngap_eventTrigger , ASN1_EXTENSION_ROOT , dissect_ngap_EventTrigger }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_LoggedMDTTrigger(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_ngap_LoggedMDTTrigger, LoggedMDTTrigger_choice, + NULL); + + return offset; +} + + +static const per_sequence_t LoggedMDTNr_sequence[] = { + { &hf_ngap_loggingInterval, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_LoggingInterval }, + { &hf_ngap_loggingDuration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_LoggingDuration }, + { &hf_ngap_loggedMDTTrigger, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_LoggedMDTTrigger }, + { &hf_ngap_bluetoothMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BluetoothMeasurementConfiguration }, + { &hf_ngap_wLANMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_WLANMeasurementConfiguration }, + { &hf_ngap_sensorMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_SensorMeasurementConfiguration }, + { &hf_ngap_areaScopeOfNeighCellsList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_AreaScopeOfNeighCellsList }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_LoggedMDTNr(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_ngap_LoggedMDTNr, LoggedMDTNr_sequence); + + return offset; +} + + +static const value_string ngap_LTEM_Indication_vals[] = { + { 0, "lte-m" }, + { 0, NULL } +}; + + +static int +dissect_ngap_LTEM_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; +} + + +static const value_string ngap_VehicleUE_vals[] = { + { 0, "authorized" }, + { 1, "not-authorized" }, + { 0, NULL } +}; + + +static int +dissect_ngap_VehicleUE(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 ngap_PedestrianUE_vals[] = { + { 0, "authorized" }, + { 1, "not-authorized" }, + { 0, NULL } +}; + + +static int +dissect_ngap_PedestrianUE(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 LTEV2XServicesAuthorized_sequence[] = { + { &hf_ngap_vehicleUE , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_VehicleUE }, + { &hf_ngap_pedestrianUE , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PedestrianUE }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_LTEV2XServicesAuthorized(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_ngap_LTEV2XServicesAuthorized, LTEV2XServicesAuthorized_sequence); + + return offset; +} + + +static const per_sequence_t LTEUESidelinkAggregateMaximumBitrate_sequence[] = { + { &hf_ngap_uESidelinkAggregateMaximumBitRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_LTEUESidelinkAggregateMaximumBitrate(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_ngap_LTEUESidelinkAggregateMaximumBitrate, LTEUESidelinkAggregateMaximumBitrate_sequence); + + return offset; +} + + static int dissect_ngap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6580,7 +10136,7 @@ dissect_ngap_MaximumIntegrityProtectedDataRate(tvbuff_t *tvb _U_, int offset _U_ static int dissect_ngap_RATRestrictionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 590 "./asn1/ngap/ngap.cnf" +#line 710 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -6589,6 +10145,7 @@ dissect_ngap_RATRestrictionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int * const fields[] = { &hf_ngap_RATRestrictionInformation_e_UTRA, &hf_ngap_RATRestrictionInformation_nR, + &hf_ngap_RATRestrictionInformation_nR_unlicensed, &hf_ngap_RATRestrictionInformation_reserved, NULL }; @@ -6696,10 +10253,133 @@ dissect_ngap_MobilityRestrictionList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const per_sequence_t MDTPLMNList_sequence_of[1] = { + { &hf_ngap_MDTPLMNList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, +}; + +static int +dissect_ngap_MDTPLMNList(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_ngap_MDTPLMNList, MDTPLMNList_sequence_of, + 1, maxnoofMDTPLMNs, FALSE); + + return offset; +} + + +static const value_string ngap_MDT_Activation_vals[] = { + { 0, "immediate-MDT-only" }, + { 1, "immediate-MDT-and-Trace" }, + { 2, "logged-MDT-only" }, + { 0, NULL } +}; + + +static int +dissect_ngap_MDT_Activation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_MDTModeNr_vals[] = { + { 0, "immediateMDTNr" }, + { 1, "loggedMDTNr" }, + { 0, NULL } +}; + +static const per_choice_t MDTModeNr_choice[] = { + { 0, &hf_ngap_immediateMDTNr , ASN1_EXTENSION_ROOT , dissect_ngap_ImmediateMDTNr }, + { 1, &hf_ngap_loggedMDTNr , ASN1_EXTENSION_ROOT , dissect_ngap_LoggedMDTNr }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_MDTModeNr(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_ngap_MDTModeNr, MDTModeNr_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MDT_Configuration_NR_sequence[] = { + { &hf_ngap_mdt_Activation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDT_Activation }, + { &hf_ngap_areaScopeOfMDT , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_AreaScopeOfMDT_NR }, + { &hf_ngap_mDTModeNr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDTModeNr }, + { &hf_ngap_signallingBasedMDTPLMNList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDTPLMNList }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_MDT_Configuration_NR(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_ngap_MDT_Configuration_NR, MDT_Configuration_NR_sequence); + + return offset; +} + + + +static int +dissect_ngap_MDTModeEutra(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 981 "./asn1/ngap/ngap.cnf" + tvbuff_t *mdt_mode_eutra_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &mdt_mode_eutra_tvb); + + if (mdt_mode_eutra_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_MDTModeEutra); + dissect_s1ap_MDTMode_PDU(mdt_mode_eutra_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + +static const per_sequence_t MDT_Configuration_EUTRA_sequence[] = { + { &hf_ngap_mdt_Activation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDT_Activation }, + { &hf_ngap_areaScopeOfMDT_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_AreaScopeOfMDT_EUTRA }, + { &hf_ngap_mDTMode , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDTModeEutra }, + { &hf_ngap_signallingBasedMDTPLMNList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_MDTPLMNList }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_MDT_Configuration_EUTRA(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_ngap_MDT_Configuration_EUTRA, MDT_Configuration_EUTRA_sequence); + + return offset; +} + + +static const per_sequence_t MDT_Configuration_sequence[] = { + { &hf_ngap_mdt_Config_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_MDT_Configuration_NR }, + { &hf_ngap_mdt_Config_EUTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_MDT_Configuration_EUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_MDT_Configuration(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_ngap_MDT_Configuration, MDT_Configuration_sequence); + + return offset; +} + + static int dissect_ngap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 207 "./asn1/ngap/ngap.cnf" +#line 215 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb=NULL; guint tvb_len; @@ -6742,7 +10422,7 @@ dissect_ngap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_ngap_NASSecurityParametersFromNGRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 720 "./asn1/ngap/ngap.cnf" +#line 841 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -6761,6 +10441,128 @@ dissect_ngap_NASSecurityParametersFromNGRAN(tvbuff_t *tvb _U_, int offset _U_, a } +static const value_string ngap_NB_IoT_DefaultPagingDRX_vals[] = { + { 0, "rf128" }, + { 1, "rf256" }, + { 2, "rf512" }, + { 3, "rf1024" }, + { 0, NULL } +}; + + +static int +dissect_ngap_NB_IoT_DefaultPagingDRX(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 ngap_NB_IoT_PagingDRX_vals[] = { + { 0, "rf32" }, + { 1, "rf64" }, + { 2, "rf128" }, + { 3, "rf256" }, + { 4, "rf512" }, + { 5, "rf1024" }, + { 0, NULL } +}; + + +static int +dissect_ngap_NB_IoT_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_NB_IoT_Paging_eDRXCycle_vals[] = { + { 0, "hf2" }, + { 1, "hf4" }, + { 2, "hf6" }, + { 3, "hf8" }, + { 4, "hf10" }, + { 5, "hf12" }, + { 6, "hf14" }, + { 7, "hf16" }, + { 8, "hf32" }, + { 9, "hf64" }, + { 10, "hf128" }, + { 11, "hf256" }, + { 12, "hf512" }, + { 13, "hf1024" }, + { 0, NULL } +}; + + +static int +dissect_ngap_NB_IoT_Paging_eDRXCycle(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, + 14, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_NB_IoT_Paging_TimeWindow_vals[] = { + { 0, "s1" }, + { 1, "s2" }, + { 2, "s3" }, + { 3, "s4" }, + { 4, "s5" }, + { 5, "s6" }, + { 6, "s7" }, + { 7, "s8" }, + { 8, "s9" }, + { 9, "s10" }, + { 10, "s11" }, + { 11, "s12" }, + { 12, "s13" }, + { 13, "s14" }, + { 14, "s15" }, + { 15, "s16" }, + { 0, NULL } +}; + + +static int +dissect_ngap_NB_IoT_Paging_TimeWindow(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NB_IoT_Paging_eDRXInfo_sequence[] = { + { &hf_ngap_nB_IoT_Paging_eDRXCycle, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NB_IoT_Paging_eDRXCycle }, + { &hf_ngap_nB_IoT_Paging_TimeWindow, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_NB_IoT_Paging_TimeWindow }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_NB_IoT_Paging_eDRXInfo(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_ngap_NB_IoT_Paging_eDRXInfo, NB_IoT_Paging_eDRXInfo_sequence); + + return offset; +} + + + +static int +dissect_ngap_NB_IoT_UEPriority(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; +} + + static int dissect_ngap_NetworkInstance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6796,6 +10598,21 @@ dissect_ngap_NextHopChainingCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string ngap_NotifySourceNGRANNode_vals[] = { + { 0, "notifySource" }, + { 0, NULL } +}; + + +static int +dissect_ngap_NotifySourceNGRANNode(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 NGRAN_TNLAssociationToRemoveItem_sequence[] = { { &hf_ngap_tNLAssociationTransportLayerAddress, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_CPTransportLayerInformation }, { &hf_ngap_tNLAssociationTransportLayerAddressAMF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_ngap_CPTransportLayerInformation }, @@ -6829,7 +10646,7 @@ dissect_ngap_NGRAN_TNLAssociationToRemoveList(tvbuff_t *tvb _U_, int offset _U_, static int dissect_ngap_NGRANTraceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 411 "./asn1/ngap/ngap.cnf" +#line 510 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -6848,6 +10665,16 @@ dissect_ngap_NGRANTraceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } + +static int +dissect_ngap_NID(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, + 44, 44, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + static const per_sequence_t NonDynamic5QIDescriptor_sequence[] = { { &hf_ngap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_FiveQI }, { &hf_ngap_priorityLevelQos, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PriorityLevelQos }, @@ -6882,6 +10709,126 @@ dissect_ngap_NotificationCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const value_string ngap_NPN_AccessInformation_vals[] = { + { 0, "pNI-NPN-Access-Information" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t NPN_AccessInformation_choice[] = { + { 0, &hf_ngap_pNI_NPN_Access_Information, ASN1_NO_EXTENSIONS , dissect_ngap_CellCAGList }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_NPN_AccessInformation(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_ngap_NPN_AccessInformation, NPN_AccessInformation_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SNPN_MobilityInformation_sequence[] = { + { &hf_ngap_serving_NID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_NID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_SNPN_MobilityInformation(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_ngap_SNPN_MobilityInformation, SNPN_MobilityInformation_sequence); + + return offset; +} + + +static const per_sequence_t PNI_NPN_MobilityInformation_sequence[] = { + { &hf_ngap_allowed_PNI_NPI_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Allowed_PNI_NPN_List }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PNI_NPN_MobilityInformation(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_ngap_PNI_NPN_MobilityInformation, PNI_NPN_MobilityInformation_sequence); + + return offset; +} + + +static const value_string ngap_NPN_MobilityInformation_vals[] = { + { 0, "sNPN-MobilityInformation" }, + { 1, "pNI-NPN-MobilityInformation" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t NPN_MobilityInformation_choice[] = { + { 0, &hf_ngap_sNPN_MobilityInformation, ASN1_NO_EXTENSIONS , dissect_ngap_SNPN_MobilityInformation }, + { 1, &hf_ngap_pNI_NPN_MobilityInformation, ASN1_NO_EXTENSIONS , dissect_ngap_PNI_NPN_MobilityInformation }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_NPN_MobilityInformation(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_ngap_NPN_MobilityInformation, NPN_MobilityInformation_choice, + NULL); + + return offset; +} + + +static const value_string ngap_NPN_PagingAssistanceInformation_vals[] = { + { 0, "pNI-NPN-PagingAssistance" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t NPN_PagingAssistanceInformation_choice[] = { + { 0, &hf_ngap_pNI_NPN_PagingAssistance, ASN1_NO_EXTENSIONS , dissect_ngap_Allowed_PNI_NPN_List }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_NPN_PagingAssistanceInformation(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_ngap_NPN_PagingAssistanceInformation, NPN_PagingAssistanceInformation_choice, + NULL); + + return offset; +} + + +static const value_string ngap_NPN_Support_vals[] = { + { 0, "sNPN" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t NPN_Support_choice[] = { + { 0, &hf_ngap_sNPN , ASN1_NO_EXTENSIONS , dissect_ngap_NID }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_NPN_Support(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_ngap_NPN_Support, NPN_Support_choice, + NULL); + + return offset; +} + + static const per_sequence_t NR_CGIListForWarning_sequence_of[1] = { { &hf_ngap_NR_CGIListForWarning_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_NR_CGI }, }; @@ -6899,7 +10846,7 @@ dissect_ngap_NR_CGIListForWarning(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ngap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 604 "./asn1/ngap/ngap.cnf" +#line 725 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -6925,7 +10872,7 @@ dissect_ngap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_ngap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 619 "./asn1/ngap/ngap.cnf" +#line 740 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -6950,8 +10897,27 @@ dissect_ngap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, static int +dissect_ngap_NRMobilityHistoryReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1021 "./asn1/ngap/ngap.cnf" + tvbuff_t *nr_mob_hist_report_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &nr_mob_hist_report_tvb); + + if (nr_mob_hist_report_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NRMobilityHistoryReport); + dissect_nr_rrc_VisitedCellInfoList_r16_PDU(nr_mob_hist_report_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + + +static int dissect_ngap_NRPPa_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 758 "./asn1/ngap/ngap.cnf" +#line 879 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb=NULL; @@ -6978,6 +10944,37 @@ dissect_ngap_NumberOfBroadcastsRequested(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t NRV2XServicesAuthorized_sequence[] = { + { &hf_ngap_vehicleUE , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_VehicleUE }, + { &hf_ngap_pedestrianUE , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PedestrianUE }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_NRV2XServicesAuthorized(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_ngap_NRV2XServicesAuthorized, NRV2XServicesAuthorized_sequence); + + return offset; +} + + +static const per_sequence_t NRUESidelinkAggregateMaximumBitrate_sequence[] = { + { &hf_ngap_uESidelinkAggregateMaximumBitRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_NRUESidelinkAggregateMaximumBitrate(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_ngap_NRUESidelinkAggregateMaximumBitrate, NRUESidelinkAggregateMaximumBitrate_sequence); + + return offset; +} + + static const value_string ngap_OverloadAction_vals[] = { { 0, "reject-non-emergency-mo-dt" }, { 1, "reject-rrc-cr-signalling" }, @@ -7088,6 +11085,22 @@ dissect_ngap_OverloadStartNSSAIList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const per_sequence_t PagingAssisDataforCEcapabUE_sequence[] = { + { &hf_ngap_eUTRA_CGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, + { &hf_ngap_coverageEnhancementLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_CoverageEnhancementLevel }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PagingAssisDataforCEcapabUE(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_ngap_PagingAssisDataforCEcapabUE, PagingAssisDataforCEcapabUE_sequence); + + return offset; +} + + static const value_string ngap_PagingOrigin_vals[] = { { 0, "non-3gpp" }, { 0, NULL } @@ -7125,6 +11138,115 @@ dissect_ngap_PagingPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const value_string ngap_Paging_eDRX_Cycle_vals[] = { + { 0, "hfhalf" }, + { 1, "hf1" }, + { 2, "hf2" }, + { 3, "hf4" }, + { 4, "hf6" }, + { 5, "hf8" }, + { 6, "hf10" }, + { 7, "hf12" }, + { 8, "hf14" }, + { 9, "hf16" }, + { 10, "hf32" }, + { 11, "hf64" }, + { 12, "hf128" }, + { 13, "hf256" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Paging_eDRX_Cycle(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, + 14, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_Paging_Time_Window_vals[] = { + { 0, "s1" }, + { 1, "s2" }, + { 2, "s3" }, + { 3, "s4" }, + { 4, "s5" }, + { 5, "s6" }, + { 6, "s7" }, + { 7, "s8" }, + { 8, "s9" }, + { 9, "s10" }, + { 10, "s11" }, + { 11, "s12" }, + { 12, "s13" }, + { 13, "s14" }, + { 14, "s15" }, + { 15, "s16" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Paging_Time_Window(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PagingeDRXInformation_sequence[] = { + { &hf_ngap_paging_eDRX_Cycle, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Paging_eDRX_Cycle }, + { &hf_ngap_paging_Time_Window, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_Paging_Time_Window }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PagingeDRXInformation(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_ngap_PagingeDRXInformation, PagingeDRXInformation_sequence); + + return offset; +} + + +static const value_string ngap_PagingProbabilityInformation_vals[] = { + { 0, "p00" }, + { 1, "p05" }, + { 2, "p10" }, + { 3, "p15" }, + { 4, "p20" }, + { 5, "p25" }, + { 6, "p30" }, + { 7, "p35" }, + { 8, "p40" }, + { 9, "p45" }, + { 10, "p50" }, + { 11, "p55" }, + { 12, "p60" }, + { 13, "p65" }, + { 14, "p70" }, + { 15, "p75" }, + { 16, "p80" }, + { 17, "p85" }, + { 18, "p90" }, + { 19, "p95" }, + { 20, "p100" }, + { 0, NULL } +}; + + +static int +dissect_ngap_PagingProbabilityInformation(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, + 21, NULL, TRUE, 0, NULL); + + return offset; +} + + static const per_sequence_t SecurityIndication_sequence[] = { { &hf_ngap_integrityProtectionIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_IntegrityProtectionIndication }, { &hf_ngap_confidentialityProtectionIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ConfidentialityProtectionIndication }, @@ -7251,6 +11373,108 @@ dissect_ngap_PathSwitchRequestUnsuccessfulTransfer(tvbuff_t *tvb _U_, int offset } +static const per_sequence_t PC5FlowBitRates_sequence[] = { + { &hf_ngap_guaranteedFlowBitRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, + { &hf_ngap_maximumFlowBitRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PC5FlowBitRates(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_ngap_PC5FlowBitRates, PC5FlowBitRates_sequence); + + return offset; +} + + +static const value_string ngap_Range_vals[] = { + { 0, "m50" }, + { 1, "m80" }, + { 2, "m180" }, + { 3, "m200" }, + { 4, "m350" }, + { 5, "m400" }, + { 6, "m500" }, + { 7, "m700" }, + { 8, "m1000" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Range(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, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PC5QoSFlowItem_sequence[] = { + { &hf_ngap_pQI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_FiveQI }, + { &hf_ngap_pc5FlowBitRates, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PC5FlowBitRates }, + { &hf_ngap_range , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_Range }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PC5QoSFlowItem(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_ngap_PC5QoSFlowItem, PC5QoSFlowItem_sequence); + + return offset; +} + + +static const per_sequence_t PC5QoSFlowList_sequence_of[1] = { + { &hf_ngap_PC5QoSFlowList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PC5QoSFlowItem }, +}; + +static int +dissect_ngap_PC5QoSFlowList(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_ngap_PC5QoSFlowList, PC5QoSFlowList_sequence_of, + 1, maxnoofPC5QoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t PC5QoSParameters_sequence[] = { + { &hf_ngap_pc5QoSFlowList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PC5QoSFlowList }, + { &hf_ngap_pc5LinkAggregatedBitRates, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BitRate }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PC5QoSParameters(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_ngap_PC5QoSParameters, PC5QoSParameters_sequence); + + return offset; +} + + +static const value_string ngap_PrivacyIndicator_vals[] = { + { 0, "immediate-MDT" }, + { 1, "logged-MDT" }, + { 0, NULL } +}; + + +static int +dissect_ngap_PrivacyIndicator(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_ngap_pDUSessionAggregateMaximumBitRateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, { &hf_ngap_pDUSessionAggregateMaximumBitRateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, @@ -7397,6 +11621,66 @@ dissect_ngap_PDUSessionResourceFailedToModifyListModRes(tvbuff_t *tvb _U_, int o } +static const per_sequence_t PDUSessionResourceFailedToResumeItemRESReq_sequence[] = { + { &hf_ngap_pDUSessionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionID }, + { &hf_ngap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Cause }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PDUSessionResourceFailedToResumeItemRESReq(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_ngap_PDUSessionResourceFailedToResumeItemRESReq, PDUSessionResourceFailedToResumeItemRESReq_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceFailedToResumeListRESReq_sequence_of[1] = { + { &hf_ngap_PDUSessionResourceFailedToResumeListRESReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionResourceFailedToResumeItemRESReq }, +}; + +static int +dissect_ngap_PDUSessionResourceFailedToResumeListRESReq(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_ngap_PDUSessionResourceFailedToResumeListRESReq, PDUSessionResourceFailedToResumeListRESReq_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceFailedToResumeItemRESRes_sequence[] = { + { &hf_ngap_pDUSessionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionID }, + { &hf_ngap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Cause }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PDUSessionResourceFailedToResumeItemRESRes(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_ngap_PDUSessionResourceFailedToResumeItemRESRes, PDUSessionResourceFailedToResumeItemRESRes_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceFailedToResumeListRESRes_sequence_of[1] = { + { &hf_ngap_PDUSessionResourceFailedToResumeListRESRes_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionResourceFailedToResumeItemRESRes }, +}; + +static int +dissect_ngap_PDUSessionResourceFailedToResumeListRESRes(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_ngap_PDUSessionResourceFailedToResumeListRESRes, PDUSessionResourceFailedToResumeListRESRes_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static int dissect_ngap_T_pDUSessionResourceSetupUnsuccessfulTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -8490,6 +12774,86 @@ dissect_ngap_PDUSessionResourceReleaseResponseTransfer(tvbuff_t *tvb _U_, int of static int +dissect_ngap_T_uEContextResumeRequestTransfer(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_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UEContextResumeRequestTransfer_PDU); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceResumeItemRESReq_sequence[] = { + { &hf_ngap_pDUSessionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionID }, + { &hf_ngap_uEContextResumeRequestTransfer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_uEContextResumeRequestTransfer }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PDUSessionResourceResumeItemRESReq(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_ngap_PDUSessionResourceResumeItemRESReq, PDUSessionResourceResumeItemRESReq_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceResumeListRESReq_sequence_of[1] = { + { &hf_ngap_PDUSessionResourceResumeListRESReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionResourceResumeItemRESReq }, +}; + +static int +dissect_ngap_PDUSessionResourceResumeListRESReq(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_ngap_PDUSessionResourceResumeListRESReq, PDUSessionResourceResumeListRESReq_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + + +static int +dissect_ngap_T_uEContextResumeResponseTransfer(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_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UEContextResumeResponseTransfer_PDU); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceResumeItemRESRes_sequence[] = { + { &hf_ngap_pDUSessionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionID }, + { &hf_ngap_uEContextResumeResponseTransfer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_uEContextResumeResponseTransfer }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PDUSessionResourceResumeItemRESRes(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_ngap_PDUSessionResourceResumeItemRESRes, PDUSessionResourceResumeItemRESRes_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceResumeListRESRes_sequence_of[1] = { + { &hf_ngap_PDUSessionResourceResumeListRESRes_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionResourceResumeItemRESRes }, +}; + +static int +dissect_ngap_PDUSessionResourceResumeListRESRes(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_ngap_PDUSessionResourceResumeListRESRes, PDUSessionResourceResumeListRESRes_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + + +static int dissect_ngap_T_secondaryRATDataUsageReportTransfer(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_containing_pdu_new(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, dissect_SecondaryRATDataUsageReportTransfer_PDU); @@ -8783,6 +13147,46 @@ dissect_ngap_PDUSessionResourceSetupUnsuccessfulTransfer(tvbuff_t *tvb _U_, int static int +dissect_ngap_T_uEContextSuspendRequestTransfer(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_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UEContextSuspendRequestTransfer_PDU); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSuspendItemSUSReq_sequence[] = { + { &hf_ngap_pDUSessionID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionID }, + { &hf_ngap_uEContextSuspendRequestTransfer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_uEContextSuspendRequestTransfer }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_PDUSessionResourceSuspendItemSUSReq(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_ngap_PDUSessionResourceSuspendItemSUSReq, PDUSessionResourceSuspendItemSUSReq_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSuspendListSUSReq_sequence_of[1] = { + { &hf_ngap_PDUSessionResourceSuspendListSUSReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_PDUSessionResourceSuspendItemSUSReq }, +}; + +static int +dissect_ngap_PDUSessionResourceSuspendListSUSReq(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_ngap_PDUSessionResourceSuspendListSUSReq, PDUSessionResourceSuspendListSUSReq_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + + +static int dissect_ngap_T_pathSwitchRequestAcknowledgeTransfer(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_containing_pdu_new(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, dissect_PathSwitchRequestAcknowledgeTransfer_PDU); @@ -8963,6 +13367,8 @@ dissect_ngap_PDUSessionType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static const value_string ngap_T_rATType_vals[] = { { 0, "nr" }, { 1, "eutra" }, + { 2, "nr-unlicensed" }, + { 3, "e-utra-unlicensed" }, { 0, NULL } }; @@ -8970,7 +13376,7 @@ static const value_string ngap_T_rATType_vals[] = { static int dissect_ngap_T_rATType(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); + 2, NULL, TRUE, 2, NULL); return offset; } @@ -8979,7 +13385,7 @@ dissect_ngap_T_rATType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ngap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 740 "./asn1/ngap/ngap.cnf" +#line 861 "./asn1/ngap/ngap.cnf" tvbuff_t *timestamp_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, ×tamp_tvb); @@ -8987,7 +13393,7 @@ dissect_ngap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act -#line 744 "./asn1/ngap/ngap.cnf" +#line 865 "./asn1/ngap/ngap.cnf" if (timestamp_tvb) { proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0)); } @@ -9000,7 +13406,7 @@ dissect_ngap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ngap_T_endTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 749 "./asn1/ngap/ngap.cnf" +#line 870 "./asn1/ngap/ngap.cnf" tvbuff_t *timestamp_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, ×tamp_tvb); @@ -9008,7 +13414,7 @@ dissect_ngap_T_endTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx -#line 753 "./asn1/ngap/ngap.cnf" +#line 874 "./asn1/ngap/ngap.cnf" if (timestamp_tvb) { proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0)); } @@ -9076,6 +13482,16 @@ dissect_ngap_PDUSessionUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } + +static int +dissect_ngap_Periodicity(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, 640000U, NULL, TRUE); + + return offset; +} + + static const per_sequence_t PLMNSupportItem_sequence[] = { { &hf_ngap_pLMNIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PLMNIdentity }, { &hf_ngap_sliceSupportList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_SliceSupportList }, @@ -9219,6 +13635,23 @@ dissect_ngap_QosFlowAddOrModifyRequestList(tvbuff_t *tvb _U_, int offset _U_, as } +static const value_string ngap_QosMonitoringRequest_vals[] = { + { 0, "ul" }, + { 1, "dl" }, + { 2, "both" }, + { 0, NULL } +}; + + +static int +dissect_ngap_QosMonitoringRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + static const per_sequence_t QosFlowSetupRequestItem_sequence[] = { { &hf_ngap_qosFlowIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_QosFlowIdentifier }, { &hf_ngap_qosFlowLevelQosParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_QosFlowLevelQosParameters }, @@ -9253,6 +13686,8 @@ dissect_ngap_QosFlowSetupRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static const value_string ngap_T_rATType_01_vals[] = { { 0, "nr" }, { 1, "eutra" }, + { 2, "nr-unlicensed" }, + { 3, "e-utra-unlicensed" }, { 0, NULL } }; @@ -9260,7 +13695,7 @@ static const value_string ngap_T_rATType_01_vals[] = { static int dissect_ngap_T_rATType_01(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); + 2, NULL, TRUE, 2, NULL); return offset; } @@ -9335,8 +13770,47 @@ dissect_ngap_RANStatusTransfer_TransparentContainer(tvbuff_t *tvb _U_, int offse static int dissect_ngap_RAN_UE_NGAP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 209 "./asn1/ngap/ngap.cnf" + guint32 ran_ue_ngap_id; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 4294967295U, NULL, FALSE); + 0U, 4294967295U, &ran_ue_ngap_id, FALSE); + + ngap_data->ran_ue_ngap_id = ran_ue_ngap_id; + + + + return offset; +} + + +static const value_string ngap_RAT_Information_vals[] = { + { unlicensed, "unlicensed" }, + { nb_IoT, "nb-IoT" }, + { 0, NULL } +}; + + +static int +dissect_ngap_RAT_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 461 "./asn1/ngap/ngap.cnf" + guint32 rat_info = 0xffffffff; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, &rat_info, TRUE, 0, NULL); + + if (ngap_data->ngap_conv && ngap_data->supported_ta && (rat_info == nb_IoT)) { + guint64 *key; + guint i; + + for (i = 0; i < wmem_array_get_count(ngap_data->supported_ta->plmn); i++) { + key = wmem_new(wmem_file_scope(), guint64); + *key = ((*(guint32*)wmem_array_index(ngap_data->supported_ta->plmn, i)) << 24) | ngap_data->supported_ta->tac; + wmem_map_insert(ngap_data->ngap_conv->nbiot_ta, key, GUINT_TO_POINTER(1)); + } + } + + return offset; } @@ -9358,6 +13832,53 @@ dissect_ngap_RedirectionVoiceFallback(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string ngap_RSN_vals[] = { + { 0, "v1" }, + { 1, "v2" }, + { 0, NULL } +}; + + +static int +dissect_ngap_RSN(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 RedundantPDUSessionInformation_sequence[] = { + { &hf_ngap_rSN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_RSN }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_RedundantPDUSessionInformation(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_ngap_RedundantPDUSessionInformation, RedundantPDUSessionInformation_sequence); + + return offset; +} + + +static const value_string ngap_RedundantQosFlowIndicator_vals[] = { + { 0, "true" }, + { 1, "false" }, + { 0, NULL } +}; + + +static int +dissect_ngap_RedundantQosFlowIndicator(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, FALSE, 0, NULL); + + return offset; +} + + static int dissect_ngap_RelativeAMFCapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -9449,6 +13970,26 @@ dissect_ngap_ResetType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int +dissect_ngap_RGLevelWirelineAccessCharacteristics(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_ngap_RNC_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, FALSE); + + return offset; +} + + + +static int dissect_ngap_RoutingID(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); @@ -9460,7 +14001,7 @@ dissect_ngap_RoutingID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ngap_RRCContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 509 "./asn1/ngap/ngap.cnf" +#line 608 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -9516,6 +14057,7 @@ static const value_string ngap_RRCEstablishmentCause_vals[] = { { 8, "mps-PriorityAccess" }, { 9, "mcs-PriorityAccess" }, { 10, "notAvailable" }, + { 11, "mo-ExceptionData" }, { 0, NULL } }; @@ -9523,7 +14065,7 @@ static const value_string ngap_RRCEstablishmentCause_vals[] = { static int dissect_ngap_RRCEstablishmentCause(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, - 10, NULL, TRUE, 1, NULL); + 10, NULL, TRUE, 2, NULL); return offset; } @@ -9562,6 +14104,134 @@ dissect_ngap_RRCState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p } +static const per_sequence_t TargetRANNodeID_sequence[] = { + { &hf_ngap_globalRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalRANNodeID }, + { &hf_ngap_selectedTAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TargetRANNodeID(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_ngap_TargetRANNodeID, TargetRANNodeID_sequence); + + return offset; +} + + +static const per_sequence_t SourceRANNodeID_sequence[] = { + { &hf_ngap_globalRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalRANNodeID }, + { &hf_ngap_selectedTAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_SourceRANNodeID(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_ngap_SourceRANNodeID, SourceRANNodeID_sequence); + + return offset; +} + + + +static int +dissect_ngap_GNBSetID(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, 22, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string ngap_T_rIM_RSDetection_vals[] = { + { 0, "rs-detected" }, + { 1, "rs-disappeared" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_rIM_RSDetection(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 RIMInformation_sequence[] = { + { &hf_ngap_targetgNBSetID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GNBSetID }, + { &hf_ngap_rIM_RSDetection, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_T_rIM_RSDetection }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_RIMInformation(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_ngap_RIMInformation, RIMInformation_sequence); + + return offset; +} + + +static const per_sequence_t RIMInformationTransfer_sequence[] = { + { &hf_ngap_targetRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TargetRANNodeID }, + { &hf_ngap_sourceRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_SourceRANNodeID }, + { &hf_ngap_rIMInformation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_RIMInformation }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_RIMInformationTransfer(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_ngap_RIMInformationTransfer, RIMInformationTransfer_sequence); + + return offset; +} + + + +static int +dissect_ngap_BIT_STRING_SIZE_7(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, + 7, 7, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_ngap_INTEGER_0_86399_(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, 86399U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ScheduledCommunicationTime_sequence[] = { + { &hf_ngap_dayofWeek , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BIT_STRING_SIZE_7 }, + { &hf_ngap_timeofDayStart , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_INTEGER_0_86399_ }, + { &hf_ngap_timeofDayEnd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_INTEGER_0_86399_ }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_ScheduledCommunicationTime(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_ngap_ScheduledCommunicationTime, ScheduledCommunicationTime_sequence); + + return offset; +} + + static const per_sequence_t SCTP_TLAs_sequence_of[1] = { { &hf_ngap_SCTP_TLAs_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_TransportLayerAddress }, }; @@ -9673,33 +14343,11 @@ dissect_ngap_ServedGUAMIList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t TargetRANNodeID_sequence[] = { - { &hf_ngap_globalRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalRANNodeID }, - { &hf_ngap_selectedTAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, - { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ngap_TargetRANNodeID(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_ngap_TargetRANNodeID, TargetRANNodeID_sequence); - - return offset; -} - - -static const per_sequence_t SourceRANNodeID_sequence[] = { - { &hf_ngap_globalRANNodeID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_GlobalRANNodeID }, - { &hf_ngap_selectedTAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, - { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; static int -dissect_ngap_SourceRANNodeID(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_ngap_SourceRANNodeID, SourceRANNodeID_sequence); +dissect_ngap_SgNB_UE_X2AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4294967295U, NULL, FALSE); return offset; } @@ -9851,6 +14499,30 @@ dissect_ngap_SONConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string ngap_SONInformationReport_vals[] = { + { 0, "failureIndicationInformation" }, + { 1, "hOReportInformation" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t SONInformationReport_choice[] = { + { 0, &hf_ngap_failureIndicationInformation_01, ASN1_NO_EXTENSIONS , dissect_ngap_FailureIndication }, + { 1, &hf_ngap_hOReportInformation_01, ASN1_NO_EXTENSIONS , dissect_ngap_HOReport }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_SONInformationReport(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_ngap_SONInformationReport, SONInformationReport_choice, + NULL); + + return offset; +} + + static const per_sequence_t UEHistoryInformation_sequence_of[1] = { { &hf_ngap_UEHistoryInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ngap_LastVisitedCellItem }, }; @@ -9878,7 +14550,7 @@ static const per_sequence_t SourceNGRANNode_ToTargetNGRANNode_TransparentContain static int dissect_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 498 "./asn1/ngap/ngap.cnf" +#line 597 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); ngap_data->transparent_container_type = SOURCE_TO_TARGET_TRANSPARENT_CONTAINER; @@ -9895,7 +14567,7 @@ dissect_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer(tvbuff_t *tv static int dissect_ngap_SourceToTarget_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 259 "./asn1/ngap/ngap.cnf" +#line 267 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -9915,6 +14587,9 @@ dissect_ngap_SourceToTarget_TransparentContainer(tvbuff_t *tvb _U_, int offset _ case fivegs_to_eps: dissect_s1ap_SourceeNB_ToTargeteNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); break; + case fivegs_to_utran: + dissect_rrc_ToTargetRNC_Container_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; default: break; } @@ -9975,6 +14650,22 @@ dissect_ngap_SourceToTarget_AMFInformationReroute(tvbuff_t *tvb _U_, int offset } +static const value_string ngap_SRVCCOperationPossible_vals[] = { + { 0, "possible" }, + { 1, "notPossible" }, + { 0, NULL } +}; + + +static int +dissect_ngap_SRVCCOperationPossible(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 SupportedTAItem_sequence[] = { { &hf_ngap_tAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAC }, { &hf_ngap_broadcastPLMNList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BroadcastPLMNList }, @@ -9984,9 +14675,25 @@ static const per_sequence_t SupportedTAItem_sequence[] = { static int dissect_ngap_SupportedTAItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 447 "./asn1/ngap/ngap.cnf" + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + + if (!PINFO_FD_VISITED(actx->pinfo) && + (ngap_data->message_type == INITIATING_MESSAGE) && + ((ngap_data->procedure_code == id_NGSetup) || + (ngap_data->procedure_code == id_RANConfigurationUpdate))) { + ngap_data->supported_ta = wmem_new0(wmem_packet_scope(), struct ngap_supported_ta); + ngap_data->supported_ta->plmn = wmem_array_new(wmem_packet_scope(), sizeof(guint32)); + } + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_ngap_SupportedTAItem, SupportedTAItem_sequence); +#line 458 "./asn1/ngap/ngap.cnf" + ngap_data->supported_ta = NULL; + + return offset; } @@ -10005,6 +14712,51 @@ dissect_ngap_SupportedTAList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const value_string ngap_SuspendIndicator_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_ngap_SuspendIndicator(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 ngap_Suspend_Request_Indication_vals[] = { + { 0, "suspend-requested" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Suspend_Request_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; +} + + +static const value_string ngap_Suspend_Response_Indication_vals[] = { + { 0, "suspend-indicated" }, + { 0, NULL } +}; + + +static int +dissect_ngap_Suspend_Response_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; +} + + static const per_sequence_t TAIListForPagingItem_sequence[] = { { &hf_ngap_tAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, @@ -10110,7 +14862,7 @@ static const per_sequence_t TargetNGRANNode_ToSourceNGRANNode_TransparentContain static int dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 504 "./asn1/ngap/ngap.cnf" +#line 603 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); ngap_data->transparent_container_type = TARGET_TO_SOURCE_TRANSPARENT_CONTAINER; @@ -10123,10 +14875,42 @@ dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer(tvbuff_t *tv } +static const per_sequence_t TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_sequence[] = { + { &hf_ngap_cell_CAGInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Cell_CAGInformation }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer(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_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer, TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_sequence); + + return offset; +} + + +static const per_sequence_t TargetRNC_ID_sequence[] = { + { &hf_ngap_lAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_LAI }, + { &hf_ngap_rNC_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_RNC_ID }, + { &hf_ngap_extendedRNC_ID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ExtendedRNC_ID }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TargetRNC_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_ngap_TargetRNC_ID, TargetRNC_ID_sequence); + + return offset; +} + + static int dissect_ngap_TargetToSource_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 284 "./asn1/ngap/ngap.cnf" +#line 295 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -10147,6 +14931,9 @@ dissect_ngap_TargetToSource_TransparentContainer(tvbuff_t *tvb _U_, int offset _ case fivegs_to_eps: dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); break; + case fivegs_to_utran: + dissect_rrc_TargetRNC_ToSourceRNC_Container_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; default: break; } @@ -10167,6 +14954,38 @@ dissect_ngap_TargetToSource_TransparentContainer(tvbuff_t *tvb _U_, int offset _ } + +static int +dissect_ngap_TargettoSource_Failure_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 331 "./asn1/ngap/ngap.cnf" + tvbuff_t *parameter_tvb; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (ngap_dissect_container && parameter_tvb && + tvb_reported_length(parameter_tvb) > 0) { + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); + /* Don't want elements inside container to write to info column */ + col_set_writable(actx->pinfo->cinfo, COL_INFO, FALSE); + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_TargettoSource_Failure_TransparentContainer); + switch(ngap_data->handover_type_value) { + case intra5gs: + dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + break; + default: + break; + } + /* Enable writing of the column again */ + col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE); + } + + + + return offset; +} + + static const value_string ngap_TimerApproachForGUAMIRemoval_vals[] = { { 0, "apply-timer" }, { 0, NULL } @@ -10185,7 +15004,7 @@ dissect_ngap_TimerApproachForGUAMIRemoval(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_ngap_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 581 "./asn1/ngap/ngap.cnf" +#line 701 "./asn1/ngap/ngap.cnf" tvbuff_t *timestamp_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, ×tamp_tvb); @@ -10193,7 +15012,7 @@ dissect_ngap_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, -#line 585 "./asn1/ngap/ngap.cnf" +#line 705 "./asn1/ngap/ngap.cnf" if (timestamp_tvb) { proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0)); } @@ -10223,6 +15042,16 @@ dissect_ngap_TimeToWait(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } + +static int +dissect_ngap_TNAP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + static const per_sequence_t TNLAssociationItem_sequence[] = { { &hf_ngap_tNLAssociationAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_CPTransportLayerInformation }, { &hf_ngap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Cause }, @@ -10291,6 +15120,48 @@ dissect_ngap_TraceActivation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } + +static int +dissect_ngap_TWAP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t TSCAssistanceInformation_sequence[] = { + { &hf_ngap_periodicity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_Periodicity }, + { &hf_ngap_burstArrivalTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_BurstArrivalTime }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TSCAssistanceInformation(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_ngap_TSCAssistanceInformation, TSCAssistanceInformation_sequence); + + return offset; +} + + +static const per_sequence_t TSCTrafficCharacteristics_sequence[] = { + { &hf_ngap_tSCAssistanceInformationDL, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_TSCAssistanceInformation }, + { &hf_ngap_tSCAssistanceInformationUL, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_TSCAssistanceInformation }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_TSCTrafficCharacteristics(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_ngap_TSCTrafficCharacteristics, TSCTrafficCharacteristics_sequence); + + return offset; +} + + static const per_sequence_t UEAggregateMaximumBitRate_sequence[] = { { &hf_ngap_uEAggregateMaximumBitRateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, { &hf_ngap_uEAggregateMaximumBitRateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_BitRate }, @@ -10307,6 +15178,21 @@ dissect_ngap_UEAggregateMaximumBitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const value_string ngap_UECapabilityInfoRequest_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_ngap_UECapabilityInfoRequest(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 ngap_UEContextRequest_vals[] = { { 0, "requested" }, { 0, NULL } @@ -10322,6 +15208,169 @@ dissect_ngap_UEContextRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } +static const per_sequence_t UEContextResumeRequestTransfer_sequence[] = { + { &hf_ngap_qosFlowFailedToResumeList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_QosFlowListWithCause }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextResumeRequestTransfer(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_ngap_UEContextResumeRequestTransfer, UEContextResumeRequestTransfer_sequence); + + return offset; +} + + +static const per_sequence_t UEContextResumeResponseTransfer_sequence[] = { + { &hf_ngap_qosFlowFailedToResumeList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_QosFlowListWithCause }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextResumeResponseTransfer(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_ngap_UEContextResumeResponseTransfer, UEContextResumeResponseTransfer_sequence); + + return offset; +} + + +static const per_sequence_t UEContextSuspendRequestTransfer_sequence[] = { + { &hf_ngap_suspendIndicator, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_SuspendIndicator }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextSuspendRequestTransfer(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_ngap_UEContextSuspendRequestTransfer, UEContextSuspendRequestTransfer_sequence); + + return offset; +} + + +static const value_string ngap_T_periodicCommunicationIndicator_vals[] = { + { 0, "periodically" }, + { 1, "ondemand" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_periodicCommunicationIndicator(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_ngap_INTEGER_1_3600_(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, 3600U, NULL, TRUE); + + return offset; +} + + +static const value_string ngap_T_stationaryIndication_vals[] = { + { 0, "stationary" }, + { 1, "mobile" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_stationaryIndication(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 ngap_T_trafficProfile_vals[] = { + { 0, "single-packet" }, + { 1, "dual-packets" }, + { 2, "multiple-packets" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_trafficProfile(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string ngap_T_batteryIndication_vals[] = { + { 0, "battery-powered" }, + { 1, "battery-powered-not-rechargeable-or-replaceable" }, + { 2, "not-battery-powered" }, + { 0, NULL } +}; + + +static int +dissect_ngap_T_batteryIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UE_DifferentiationInfo_sequence[] = { + { &hf_ngap_periodicCommunicationIndicator, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_periodicCommunicationIndicator }, + { &hf_ngap_periodicTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_INTEGER_1_3600_ }, + { &hf_ngap_scheduledCommunicationTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ScheduledCommunicationTime }, + { &hf_ngap_stationaryIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_stationaryIndication }, + { &hf_ngap_trafficProfile , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_trafficProfile }, + { &hf_ngap_batteryIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_T_batteryIndication }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UE_DifferentiationInfo(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_ngap_UE_DifferentiationInfo, UE_DifferentiationInfo_sequence); + + return offset; +} + + +static const value_string ngap_UEHistoryInformationFromTheUE_vals[] = { + { 0, "nR" }, + { 1, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t UEHistoryInformationFromTheUE_choice[] = { + { 0, &hf_ngap_nR , ASN1_NO_EXTENSIONS , dissect_ngap_NRMobilityHistoryReport }, + { 1, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_UEHistoryInformationFromTheUE(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_ngap_UEHistoryInformationFromTheUE, UEHistoryInformationFromTheUE_choice, + NULL); + + return offset; +} + + static const per_sequence_t UE_NGAP_ID_pair_sequence[] = { { &hf_ngap_aMF_UE_NGAP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_AMF_UE_NGAP_ID }, { &hf_ngap_rAN_UE_NGAP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_RAN_UE_NGAP_ID }, @@ -10434,17 +15483,27 @@ dissect_ngap_UEPresenceInAreaOfInterestList(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_ngap_UERadioCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 570 "./asn1/ngap/ngap.cnf" +#line 680 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; + struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); - if (parameter_tvb && nr_rrc_ue_radio_access_cap_info_handle) { - proto_tree *subtree; + if (parameter_tvb) { + if (ngap_data->procedure_code == id_UERadioCapability_EUTRA_Format) { + if (lte_rrc_ue_radio_access_cap_info_handle) { + proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); - call_dissector(nr_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); + call_dissector(lte_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + } + } else if (nr_rrc_ue_radio_access_cap_info_handle) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapability); + call_dissector(nr_rrc_ue_radio_access_cap_info_handle, parameter_tvb, actx->pinfo, subtree); + } } @@ -10456,7 +15515,7 @@ dissect_ngap_UERadioCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ngap_UERadioCapabilityForPagingOfNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 545 "./asn1/ngap/ngap.cnf" +#line 655 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -10478,7 +15537,7 @@ dissect_ngap_UERadioCapabilityForPagingOfNR(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_ngap_UERadioCapabilityForPagingOfEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 556 "./asn1/ngap/ngap.cnf" +#line 666 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -10513,6 +15572,38 @@ dissect_ngap_UERadioCapabilityForPaging(tvbuff_t *tvb _U_, int offset _U_, asn1_ } + +static int +dissect_ngap_UERadioCapabilityForPagingOfNB_IoT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 644 "./asn1/ngap/ngap.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 && lte_rrc_ue_radio_paging_info_nb_handle) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ngap_UERadioCapabilityForPagingOfNB_IoT); + call_dissector(lte_rrc_ue_radio_paging_info_nb_handle, parameter_tvb, actx->pinfo, subtree); + } + + + + return offset; +} + + + +static int +dissect_ngap_UERadioCapabilityID(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 ngap_UERetentionInformation_vals[] = { { 0, "ues-retained" }, { 0, NULL } @@ -10546,6 +15637,57 @@ dissect_ngap_UESecurityCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const value_string ngap_UE_UP_CIoT_Support_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_ngap_UE_UP_CIoT_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, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_ngap_UL_NAS_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_ngap_UL_NAS_Count(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, + 5, 5, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t UL_CP_SecurityInformation_sequence[] = { + { &hf_ngap_ul_NAS_MAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_UL_NAS_MAC }, + { &hf_ngap_ul_NAS_Count , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_UL_NAS_Count }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UL_CP_SecurityInformation(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_ngap_UL_CP_SecurityInformation, UL_CP_SecurityInformation_sequence); + + return offset; +} + + static const per_sequence_t UL_NGU_UP_TNLModifyItem_sequence[] = { { &hf_ngap_uL_NGU_UP_TNLInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_UPTransportLayerInformation }, { &hf_ngap_dL_NGU_UP_TNLInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_UPTransportLayerInformation }, @@ -10651,6 +15793,16 @@ dissect_ngap_UPTransportLayerInformationList(tvbuff_t *tvb _U_, int offset _U_, } + +static int +dissect_ngap_URI_address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE); + + return offset; +} + + static const per_sequence_t UserLocationInformationEUTRA_sequence[] = { { &hf_ngap_eUTRA_CGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_EUTRA_CGI }, { &hf_ngap_tAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TAI }, @@ -10727,6 +15879,64 @@ dissect_ngap_UserLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const per_sequence_t UserLocationInformationTNGF_sequence[] = { + { &hf_ngap_tNAP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TNAP_ID }, + { &hf_ngap_iPAddress , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TransportLayerAddress }, + { &hf_ngap_portNumber , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PortNumber }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UserLocationInformationTNGF(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_ngap_UserLocationInformationTNGF, UserLocationInformationTNGF_sequence); + + return offset; +} + + +static const per_sequence_t UserLocationInformationTWIF_sequence[] = { + { &hf_ngap_tWAP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TWAP_ID }, + { &hf_ngap_iPAddress , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_TransportLayerAddress }, + { &hf_ngap_portNumber , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_PortNumber }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UserLocationInformationTWIF(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_ngap_UserLocationInformationTWIF, UserLocationInformationTWIF_sequence); + + return offset; +} + + +static const value_string ngap_UserLocationInformationW_AGF_vals[] = { + { 0, "globalLine-ID" }, + { 1, "hFCNode-ID" }, + { 2, "choice-Extensions" }, + { 0, NULL } +}; + +static const per_choice_t UserLocationInformationW_AGF_choice[] = { + { 0, &hf_ngap_globalLine_ID , ASN1_NO_EXTENSIONS , dissect_ngap_GlobalLine_ID }, + { 1, &hf_ngap_hFCNode_ID , ASN1_NO_EXTENSIONS , dissect_ngap_HFCNode_ID }, + { 2, &hf_ngap_choice_Extensions, ASN1_NO_EXTENSIONS , dissect_ngap_ProtocolIE_SingleContainer }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ngap_UserLocationInformationW_AGF(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_ngap_UserLocationInformationW_AGF, UserLocationInformationW_AGF_choice, + NULL); + + return offset; +} + + static int dissect_ngap_WarningAreaCoordinates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -10768,7 +15978,7 @@ dissect_ngap_WarningAreaList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ngap_WarningMessageContents(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 337 "./asn1/ngap/ngap.cnf" +#line 372 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 1, 9600, FALSE, ¶meter_tvb); @@ -10806,6 +16016,21 @@ dissect_ngap_WarningType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const per_sequence_t WUS_Assistance_Information_sequence[] = { + { &hf_ngap_pagingProbabilityInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_PagingProbabilityInformation }, + { &hf_ngap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ngap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_WUS_Assistance_Information(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_ngap_WUS_Assistance_Information, WUS_Assistance_Information_sequence); + + return offset; +} + + static const per_sequence_t PDUSessionResourceSetupRequest_sequence[] = { { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -10813,7 +16038,7 @@ static const per_sequence_t PDUSessionResourceSetupRequest_sequence[] = { static int dissect_ngap_PDUSessionResourceSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1491 "./asn1/ngap/ngap.cnf" +#line 2038 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceSetupRequest"); @@ -10831,7 +16056,7 @@ static const per_sequence_t PDUSessionResourceSetupResponse_sequence[] = { static int dissect_ngap_PDUSessionResourceSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1494 "./asn1/ngap/ngap.cnf" +#line 2041 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceSetupResponse"); @@ -10849,7 +16074,7 @@ static const per_sequence_t PDUSessionResourceReleaseCommand_sequence[] = { static int dissect_ngap_PDUSessionResourceReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1485 "./asn1/ngap/ngap.cnf" +#line 2032 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceReleaseCommand"); @@ -10867,7 +16092,7 @@ static const per_sequence_t PDUSessionResourceReleaseResponse_sequence[] = { static int dissect_ngap_PDUSessionResourceReleaseResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1488 "./asn1/ngap/ngap.cnf" +#line 2035 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceReleaseResponse"); @@ -10885,7 +16110,7 @@ static const per_sequence_t PDUSessionResourceModifyRequest_sequence[] = { static int dissect_ngap_PDUSessionResourceModifyRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1470 "./asn1/ngap/ngap.cnf" +#line 2017 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyRequest"); @@ -10903,7 +16128,7 @@ static const per_sequence_t PDUSessionResourceModifyResponse_sequence[] = { static int dissect_ngap_PDUSessionResourceModifyResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1473 "./asn1/ngap/ngap.cnf" +#line 2020 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyResponse"); @@ -10921,7 +16146,7 @@ static const per_sequence_t PDUSessionResourceNotify_sequence[] = { static int dissect_ngap_PDUSessionResourceNotify(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1482 "./asn1/ngap/ngap.cnf" +#line 2029 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceNotify"); @@ -10939,7 +16164,7 @@ static const per_sequence_t PDUSessionResourceModifyIndication_sequence[] = { static int dissect_ngap_PDUSessionResourceModifyIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1476 "./asn1/ngap/ngap.cnf" +#line 2023 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyIndication"); @@ -10957,7 +16182,7 @@ static const per_sequence_t PDUSessionResourceModifyConfirm_sequence[] = { static int dissect_ngap_PDUSessionResourceModifyConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1479 "./asn1/ngap/ngap.cnf" +#line 2026 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyConfirm"); @@ -10975,7 +16200,7 @@ static const per_sequence_t InitialContextSetupRequest_sequence[] = { static int dissect_ngap_InitialContextSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1413 "./asn1/ngap/ngap.cnf" +#line 1960 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupRequest"); @@ -10993,7 +16218,7 @@ static const per_sequence_t InitialContextSetupResponse_sequence[] = { static int dissect_ngap_InitialContextSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1416 "./asn1/ngap/ngap.cnf" +#line 1963 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupResponse"); @@ -11011,7 +16236,7 @@ static const per_sequence_t InitialContextSetupFailure_sequence[] = { static int dissect_ngap_InitialContextSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1419 "./asn1/ngap/ngap.cnf" +#line 1966 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupFailure"); @@ -11029,7 +16254,7 @@ static const per_sequence_t UEContextReleaseRequest_sequence[] = { static int dissect_ngap_UEContextReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1551 "./asn1/ngap/ngap.cnf" +#line 2104 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseRequest"); @@ -11047,7 +16272,7 @@ static const per_sequence_t UEContextReleaseCommand_sequence[] = { static int dissect_ngap_UEContextReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1545 "./asn1/ngap/ngap.cnf" +#line 2098 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseCommand"); @@ -11065,7 +16290,7 @@ static const per_sequence_t UEContextReleaseComplete_sequence[] = { static int dissect_ngap_UEContextReleaseComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1548 "./asn1/ngap/ngap.cnf" +#line 2101 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseComplete"); @@ -11076,6 +16301,114 @@ dissect_ngap_UEContextReleaseComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const per_sequence_t UEContextResumeRequest_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextResumeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2107 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeRequest"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextResumeRequest, UEContextResumeRequest_sequence); + + return offset; +} + + +static const per_sequence_t UEContextResumeResponse_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextResumeResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2110 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeResponse"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextResumeResponse, UEContextResumeResponse_sequence); + + return offset; +} + + +static const per_sequence_t UEContextResumeFailure_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextResumeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2113 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeFailure"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextResumeFailure, UEContextResumeFailure_sequence); + + return offset; +} + + +static const per_sequence_t UEContextSuspendRequest_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextSuspendRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2116 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendRequest"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextSuspendRequest, UEContextSuspendRequest_sequence); + + return offset; +} + + +static const per_sequence_t UEContextSuspendResponse_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextSuspendResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2119 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendResponse"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextSuspendResponse, UEContextSuspendResponse_sequence); + + return offset; +} + + +static const per_sequence_t UEContextSuspendFailure_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEContextSuspendFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2122 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendFailure"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEContextSuspendFailure, UEContextSuspendFailure_sequence); + + return offset; +} + + static const per_sequence_t UEContextModificationRequest_sequence[] = { { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -11083,7 +16416,7 @@ static const per_sequence_t UEContextModificationRequest_sequence[] = { static int dissect_ngap_UEContextModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1536 "./asn1/ngap/ngap.cnf" +#line 2089 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationRequest"); @@ -11101,7 +16434,7 @@ static const per_sequence_t UEContextModificationResponse_sequence[] = { static int dissect_ngap_UEContextModificationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1539 "./asn1/ngap/ngap.cnf" +#line 2092 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationResponse"); @@ -11119,7 +16452,7 @@ static const per_sequence_t UEContextModificationFailure_sequence[] = { static int dissect_ngap_UEContextModificationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1542 "./asn1/ngap/ngap.cnf" +#line 2095 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationFailure"); @@ -11137,7 +16470,7 @@ static const per_sequence_t RRCInactiveTransitionReport_sequence[] = { static int dissect_ngap_RRCInactiveTransitionReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1524 "./asn1/ngap/ngap.cnf" +#line 2077 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCInactiveTransitionReport"); @@ -11148,6 +16481,60 @@ dissect_ngap_RRCInactiveTransitionReport(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t RetrieveUEInformation_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_RetrieveUEInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2074 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEInformation"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_RetrieveUEInformation, RetrieveUEInformation_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationTransfer_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UEInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2125 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationTransfer"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UEInformationTransfer, UEInformationTransfer_sequence); + + return offset; +} + + +static const per_sequence_t RANCPRelocationIndication_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_RANCPRelocationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2068 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANCPRelocationIndication"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_RANCPRelocationIndication, RANCPRelocationIndication_sequence); + + return offset; +} + + static const per_sequence_t HandoverRequired_sequence[] = { { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -11155,7 +16542,7 @@ static const per_sequence_t HandoverRequired_sequence[] = { static int dissect_ngap_HandoverRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1395 "./asn1/ngap/ngap.cnf" +#line 1939 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequired"); @@ -11173,7 +16560,7 @@ static const per_sequence_t HandoverCommand_sequence[] = { static int dissect_ngap_HandoverCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1398 "./asn1/ngap/ngap.cnf" +#line 1942 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCommand"); @@ -11191,7 +16578,7 @@ static const per_sequence_t HandoverPreparationFailure_sequence[] = { static int dissect_ngap_HandoverPreparationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1401 "./asn1/ngap/ngap.cnf" +#line 1945 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationFailure"); @@ -11209,7 +16596,7 @@ static const per_sequence_t HandoverRequest_sequence[] = { static int dissect_ngap_HandoverRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 251 "./asn1/ngap/ngap.cnf" +#line 259 "./asn1/ngap/ngap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_DL; @@ -11230,7 +16617,7 @@ static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { static int dissect_ngap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1407 "./asn1/ngap/ngap.cnf" +#line 1951 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequestAcknowledge"); @@ -11248,7 +16635,7 @@ static const per_sequence_t HandoverFailure_sequence[] = { static int dissect_ngap_HandoverFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1410 "./asn1/ngap/ngap.cnf" +#line 1954 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFailure"); @@ -11266,7 +16653,7 @@ static const per_sequence_t HandoverNotify_sequence[] = { static int dissect_ngap_HandoverNotify(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1392 "./asn1/ngap/ngap.cnf" +#line 1936 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverNotify"); @@ -11284,7 +16671,7 @@ static const per_sequence_t PathSwitchRequest_sequence[] = { static int dissect_ngap_PathSwitchRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1461 "./asn1/ngap/ngap.cnf" +#line 2008 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequest"); @@ -11302,7 +16689,7 @@ static const per_sequence_t PathSwitchRequestAcknowledge_sequence[] = { static int dissect_ngap_PathSwitchRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1464 "./asn1/ngap/ngap.cnf" +#line 2011 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestAcknowledge"); @@ -11320,7 +16707,7 @@ static const per_sequence_t PathSwitchRequestFailure_sequence[] = { static int dissect_ngap_PathSwitchRequestFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1467 "./asn1/ngap/ngap.cnf" +#line 2014 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestFailure"); @@ -11338,7 +16725,7 @@ static const per_sequence_t HandoverCancel_sequence[] = { static int dissect_ngap_HandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1386 "./asn1/ngap/ngap.cnf" +#line 1930 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancel"); @@ -11356,7 +16743,7 @@ static const per_sequence_t HandoverCancelAcknowledge_sequence[] = { static int dissect_ngap_HandoverCancelAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1389 "./asn1/ngap/ngap.cnf" +#line 1933 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancelAcknowledge"); @@ -11367,6 +16754,60 @@ dissect_ngap_HandoverCancelAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const per_sequence_t HandoverSuccess_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_HandoverSuccess(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1957 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverSuccess"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_HandoverSuccess, HandoverSuccess_sequence); + + return offset; +} + + +static const per_sequence_t UplinkRANEarlyStatusTransfer_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UplinkRANEarlyStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2155 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANEarlyStatusTransfer"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UplinkRANEarlyStatusTransfer, UplinkRANEarlyStatusTransfer_sequence); + + return offset; +} + + +static const per_sequence_t DownlinkRANEarlyStatusTransfer_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DownlinkRANEarlyStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1918 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANEarlyStatusTransfer"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_DownlinkRANEarlyStatusTransfer, DownlinkRANEarlyStatusTransfer_sequence); + + return offset; +} + + static const per_sequence_t UplinkRANStatusTransfer_sequence[] = { { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -11374,7 +16815,7 @@ static const per_sequence_t UplinkRANStatusTransfer_sequence[] = { static int dissect_ngap_UplinkRANStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1575 "./asn1/ngap/ngap.cnf" +#line 2158 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANStatusTransfer"); @@ -11392,7 +16833,7 @@ static const per_sequence_t DownlinkRANStatusTransfer_sequence[] = { static int dissect_ngap_DownlinkRANStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1377 "./asn1/ngap/ngap.cnf" +#line 1921 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANStatusTransfer"); @@ -11410,7 +16851,7 @@ static const per_sequence_t Paging_sequence[] = { static int dissect_ngap_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1458 "./asn1/ngap/ngap.cnf" +#line 2005 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging"); @@ -11428,7 +16869,7 @@ static const per_sequence_t InitialUEMessage_sequence[] = { static int dissect_ngap_InitialUEMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 239 "./asn1/ngap/ngap.cnf" +#line 247 "./asn1/ngap/ngap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_UL; @@ -11449,7 +16890,7 @@ static const per_sequence_t DownlinkNASTransport_sequence[] = { static int dissect_ngap_DownlinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 243 "./asn1/ngap/ngap.cnf" +#line 251 "./asn1/ngap/ngap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_DL; @@ -11470,7 +16911,7 @@ static const per_sequence_t UplinkNASTransport_sequence[] = { static int dissect_ngap_UplinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 247 "./asn1/ngap/ngap.cnf" +#line 255 "./asn1/ngap/ngap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_UL; @@ -11484,6 +16925,36 @@ dissect_ngap_UplinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } + +static int +dissect_ngap_W_AGFIdentityInformation(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_ngap_TNGFIdentityInformation(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_ngap_TWIFIdentityInformation(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 NASNonDeliveryIndication_sequence[] = { { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -11491,7 +16962,7 @@ static const per_sequence_t NASNonDeliveryIndication_sequence[] = { static int dissect_ngap_NASNonDeliveryIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1434 "./asn1/ngap/ngap.cnf" +#line 1981 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NASNonDeliveryIndication"); @@ -11509,7 +16980,7 @@ static const per_sequence_t RerouteNASRequest_sequence[] = { static int dissect_ngap_RerouteNASRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1521 "./asn1/ngap/ngap.cnf" +#line 2071 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RerouteNASRequest"); @@ -11523,7 +16994,7 @@ dissect_ngap_RerouteNASRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ngap_NGAP_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 400 "./asn1/ngap/ngap.cnf" +#line 499 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -11549,7 +17020,7 @@ static const per_sequence_t NGSetupRequest_sequence[] = { static int dissect_ngap_NGSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1443 "./asn1/ngap/ngap.cnf" +#line 1990 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGSetupRequest"); @@ -11567,7 +17038,7 @@ static const per_sequence_t NGSetupResponse_sequence[] = { static int dissect_ngap_NGSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1446 "./asn1/ngap/ngap.cnf" +#line 1993 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGSetupResponse"); @@ -11585,7 +17056,7 @@ static const per_sequence_t NGSetupFailure_sequence[] = { static int dissect_ngap_NGSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1449 "./asn1/ngap/ngap.cnf" +#line 1996 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGSetupFailure"); @@ -11603,7 +17074,7 @@ static const per_sequence_t RANConfigurationUpdate_sequence[] = { static int dissect_ngap_RANConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1512 "./asn1/ngap/ngap.cnf" +#line 2059 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANConfigurationUpdate"); @@ -11621,7 +17092,7 @@ static const per_sequence_t RANConfigurationUpdateAcknowledge_sequence[] = { static int dissect_ngap_RANConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1515 "./asn1/ngap/ngap.cnf" +#line 2062 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANConfigurationUpdateAcknowledge"); @@ -11639,7 +17110,7 @@ static const per_sequence_t RANConfigurationUpdateFailure_sequence[] = { static int dissect_ngap_RANConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1518 "./asn1/ngap/ngap.cnf" +#line 2065 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANConfigurationUpdateFailure"); @@ -11657,7 +17128,7 @@ static const per_sequence_t AMFConfigurationUpdate_sequence[] = { static int dissect_ngap_AMFConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1350 "./asn1/ngap/ngap.cnf" +#line 1885 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFConfigurationUpdate"); @@ -11675,7 +17146,7 @@ static const per_sequence_t AMFConfigurationUpdateAcknowledge_sequence[] = { static int dissect_ngap_AMFConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1353 "./asn1/ngap/ngap.cnf" +#line 1888 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFConfigurationUpdateAcknowledge"); @@ -11693,7 +17164,7 @@ static const per_sequence_t AMFConfigurationUpdateFailure_sequence[] = { static int dissect_ngap_AMFConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1356 "./asn1/ngap/ngap.cnf" +#line 1891 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFConfigurationUpdateFailure"); @@ -11711,7 +17182,7 @@ static const per_sequence_t AMFStatusIndication_sequence[] = { static int dissect_ngap_AMFStatusIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1359 "./asn1/ngap/ngap.cnf" +#line 1897 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFStatusIndication"); @@ -11729,7 +17200,7 @@ static const per_sequence_t NGReset_sequence[] = { static int dissect_ngap_NGReset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1437 "./asn1/ngap/ngap.cnf" +#line 1984 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGReset"); @@ -11747,7 +17218,7 @@ static const per_sequence_t NGResetAcknowledge_sequence[] = { static int dissect_ngap_NGResetAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1440 "./asn1/ngap/ngap.cnf" +#line 1987 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGResetAcknowledge"); @@ -11765,7 +17236,7 @@ static const per_sequence_t ErrorIndication_sequence[] = { static int dissect_ngap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1383 "./asn1/ngap/ngap.cnf" +#line 1927 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication"); @@ -11783,7 +17254,7 @@ static const per_sequence_t OverloadStart_sequence[] = { static int dissect_ngap_OverloadStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1452 "./asn1/ngap/ngap.cnf" +#line 1999 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStart"); @@ -11801,7 +17272,7 @@ static const per_sequence_t OverloadStop_sequence[] = { static int dissect_ngap_OverloadStop(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1455 "./asn1/ngap/ngap.cnf" +#line 2002 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStop"); @@ -11819,7 +17290,7 @@ static const per_sequence_t UplinkRANConfigurationTransfer_sequence[] = { static int dissect_ngap_UplinkRANConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1572 "./asn1/ngap/ngap.cnf" +#line 2152 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRANConfigurationTransfer"); @@ -11837,7 +17308,7 @@ static const per_sequence_t DownlinkRANConfigurationTransfer_sequence[] = { static int dissect_ngap_DownlinkRANConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1374 "./asn1/ngap/ngap.cnf" +#line 1915 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRANConfigurationTransfer"); @@ -11855,7 +17326,7 @@ static const per_sequence_t WriteReplaceWarningRequest_sequence[] = { static int dissect_ngap_WriteReplaceWarningRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1581 "./asn1/ngap/ngap.cnf" +#line 2164 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningRequest"); @@ -11873,11 +17344,10 @@ static const per_sequence_t WriteReplaceWarningResponse_sequence[] = { static int dissect_ngap_WriteReplaceWarningResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1584 "./asn1/ngap/ngap.cnf" +#line 2167 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningResponse"); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_ngap_WriteReplaceWarningResponse, WriteReplaceWarningResponse_sequence); @@ -11892,7 +17362,7 @@ static const per_sequence_t PWSCancelRequest_sequence[] = { static int dissect_ngap_PWSCancelRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1500 "./asn1/ngap/ngap.cnf" +#line 2047 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSCancelRequest"); @@ -11910,7 +17380,7 @@ static const per_sequence_t PWSCancelResponse_sequence[] = { static int dissect_ngap_PWSCancelResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1503 "./asn1/ngap/ngap.cnf" +#line 2050 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSCancelResponse"); @@ -11928,7 +17398,7 @@ static const per_sequence_t PWSRestartIndication_sequence[] = { static int dissect_ngap_PWSRestartIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1509 "./asn1/ngap/ngap.cnf" +#line 2056 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSRestartIndication"); @@ -11946,7 +17416,7 @@ static const per_sequence_t PWSFailureIndication_sequence[] = { static int dissect_ngap_PWSFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1506 "./asn1/ngap/ngap.cnf" +#line 2053 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSFailureIndication"); @@ -11964,7 +17434,7 @@ static const per_sequence_t DownlinkUEAssociatedNRPPaTransport_sequence[] = { static int dissect_ngap_DownlinkUEAssociatedNRPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1380 "./asn1/ngap/ngap.cnf" +#line 1924 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkUEAssociatedNRPPaTransport"); @@ -11982,7 +17452,7 @@ static const per_sequence_t UplinkUEAssociatedNRPPaTransport_sequence[] = { static int dissect_ngap_UplinkUEAssociatedNRPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1578 "./asn1/ngap/ngap.cnf" +#line 2161 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkUEAssociatedNRPPaTransport"); @@ -12000,7 +17470,7 @@ static const per_sequence_t DownlinkNonUEAssociatedNRPPaTransport_sequence[] = { static int dissect_ngap_DownlinkNonUEAssociatedNRPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1371 "./asn1/ngap/ngap.cnf" +#line 1912 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkNonUEAssociatedNRPPaTransport"); @@ -12018,7 +17488,7 @@ static const per_sequence_t UplinkNonUEAssociatedNRPPaTransport_sequence[] = { static int dissect_ngap_UplinkNonUEAssociatedNRPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1569 "./asn1/ngap/ngap.cnf" +#line 2149 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkNonUEAssociatedNRPPaTransport"); @@ -12036,7 +17506,7 @@ static const per_sequence_t TraceStart_sequence[] = { static int dissect_ngap_TraceStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1533 "./asn1/ngap/ngap.cnf" +#line 2086 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceStart"); @@ -12054,7 +17524,7 @@ static const per_sequence_t TraceFailureIndication_sequence[] = { static int dissect_ngap_TraceFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1530 "./asn1/ngap/ngap.cnf" +#line 2083 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceFailureIndication"); @@ -12072,7 +17542,7 @@ static const per_sequence_t DeactivateTrace_sequence[] = { static int dissect_ngap_DeactivateTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1365 "./asn1/ngap/ngap.cnf" +#line 1906 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace"); @@ -12090,7 +17560,7 @@ static const per_sequence_t CellTrafficTrace_sequence[] = { static int dissect_ngap_CellTrafficTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1362 "./asn1/ngap/ngap.cnf" +#line 1900 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace"); @@ -12108,7 +17578,7 @@ static const per_sequence_t LocationReportingControl_sequence[] = { static int dissect_ngap_LocationReportingControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1428 "./asn1/ngap/ngap.cnf" +#line 1975 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingControl"); @@ -12126,7 +17596,7 @@ static const per_sequence_t LocationReportingFailureIndication_sequence[] = { static int dissect_ngap_LocationReportingFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1431 "./asn1/ngap/ngap.cnf" +#line 1978 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingFailureIndication"); @@ -12144,7 +17614,7 @@ static const per_sequence_t LocationReport_sequence[] = { static int dissect_ngap_LocationReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1425 "./asn1/ngap/ngap.cnf" +#line 1972 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReport"); @@ -12162,7 +17632,7 @@ static const per_sequence_t UETNLABindingReleaseRequest_sequence[] = { static int dissect_ngap_UETNLABindingReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1560 "./asn1/ngap/ngap.cnf" +#line 2143 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UETNLABindingReleaseRequest"); @@ -12180,7 +17650,7 @@ static const per_sequence_t UERadioCapabilityInfoIndication_sequence[] = { static int dissect_ngap_UERadioCapabilityInfoIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1563 "./asn1/ngap/ngap.cnf" +#line 2140 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityInfoIndication"); @@ -12198,7 +17668,7 @@ static const per_sequence_t UERadioCapabilityCheckRequest_sequence[] = { static int dissect_ngap_UERadioCapabilityCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1554 "./asn1/ngap/ngap.cnf" +#line 2128 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityCheckRequest"); @@ -12216,7 +17686,7 @@ static const per_sequence_t UERadioCapabilityCheckResponse_sequence[] = { static int dissect_ngap_UERadioCapabilityCheckResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1557 "./asn1/ngap/ngap.cnf" +#line 2131 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityCheckResponse"); @@ -12234,7 +17704,7 @@ static const per_sequence_t PrivateMessage_sequence[] = { static int dissect_ngap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1497 "./asn1/ngap/ngap.cnf" +#line 2044 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage"); @@ -12252,7 +17722,7 @@ static const per_sequence_t SecondaryRATDataUsageReport_sequence[] = { static int dissect_ngap_SecondaryRATDataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1527 "./asn1/ngap/ngap.cnf" +#line 2080 "./asn1/ngap/ngap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecondaryRATDataUsageReport"); @@ -12263,10 +17733,118 @@ dissect_ngap_SecondaryRATDataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t UplinkRIMInformationTransfer_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UplinkRIMInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2170 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkRIMInformationTransfer"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UplinkRIMInformationTransfer, UplinkRIMInformationTransfer_sequence); + + return offset; +} + + +static const per_sequence_t DownlinkRIMInformationTransfer_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_DownlinkRIMInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2173 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkRIMInformationTransfer"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_DownlinkRIMInformationTransfer, DownlinkRIMInformationTransfer_sequence); + + return offset; +} + + +static const per_sequence_t ConnectionEstablishmentIndication_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_ConnectionEstablishmentIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1903 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ConnectionEstablishmentIndication"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_ConnectionEstablishmentIndication, ConnectionEstablishmentIndication_sequence); + + return offset; +} + + +static const per_sequence_t UERadioCapabilityIDMappingRequest_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UERadioCapabilityIDMappingRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2134 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingRequest"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UERadioCapabilityIDMappingRequest, UERadioCapabilityIDMappingRequest_sequence); + + return offset; +} + + +static const per_sequence_t UERadioCapabilityIDMappingResponse_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_UERadioCapabilityIDMappingResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 2137 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingResponse"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_UERadioCapabilityIDMappingResponse, UERadioCapabilityIDMappingResponse_sequence); + + return offset; +} + + +static const per_sequence_t AMFCPRelocationIndication_sequence[] = { + { &hf_ngap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ngap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ngap_AMFCPRelocationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1894 "./asn1/ngap/ngap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AMFCPRelocationIndication"); + + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_ngap_AMFCPRelocationIndication, AMFCPRelocationIndication_sequence); + + return offset; +} + + static int dissect_ngap_InitiatingMessage_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 113 "./asn1/ngap/ngap.cnf" +#line 117 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); ngap_data->message_type = INITIATING_MESSAGE; @@ -12295,7 +17873,7 @@ dissect_ngap_InitiatingMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ngap_SuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 117 "./asn1/ngap/ngap.cnf" +#line 121 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); ngap_data->message_type = SUCCESSFUL_OUTCOME; @@ -12324,7 +17902,7 @@ dissect_ngap_SuccessfulOutcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ngap_UnsuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 121 "./asn1/ngap/ngap.cnf" +#line 125 "./asn1/ngap/ngap.cnf" struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo); ngap_data->message_type = UNSUCCESSFUL_OUTCOME; @@ -12340,8 +17918,6 @@ dissect_ngap_UnsuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_c - - offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_UnsuccessfulOutcomeValue); return offset; @@ -12405,6 +17981,22 @@ static int dissect_AllowedNSSAI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p offset += 7; offset >>= 3; return offset; } +static int dissect_AlternativeQoSParaSetIndex_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_ngap_AlternativeQoSParaSetIndex(tvb, offset, &asn1_ctx, tree, hf_ngap_AlternativeQoSParaSetIndex_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AlternativeQoSParaSetList_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_ngap_AlternativeQoSParaSetList(tvb, offset, &asn1_ctx, tree, hf_ngap_AlternativeQoSParaSetList_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_AMFName_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12477,6 +18069,14 @@ static int dissect_AssociatedQosFlowList_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } +static int dissect_AuthenticatedIndication_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_ngap_AuthenticatedIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_AuthenticatedIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_BroadcastCancelledAreaList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12517,6 +18117,22 @@ static int dissect_CellIDListForRestart_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } +static int dissect_CEmodeBSupport_Indicator_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_ngap_CEmodeBSupport_Indicator(tvb, offset, &asn1_ctx, tree, hf_ngap_CEmodeBSupport_Indicator_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_CEmodeBrestricted_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_ngap_CEmodeBrestricted(tvb, offset, &asn1_ctx, tree, hf_ngap_CEmodeBrestricted_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_CNAssistedRANTuning_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12597,6 +18213,46 @@ static int dissect_DataForwardingNotPossible_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } +static int dissect_DAPSRequestInfo_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_ngap_DAPSRequestInfo(tvb, offset, &asn1_ctx, tree, hf_ngap_DAPSRequestInfo_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DAPSResponseInfoList_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_ngap_DAPSResponseInfoList(tvb, offset, &asn1_ctx, tree, hf_ngap_DAPSResponseInfoList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DataForwardingResponseERABList_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_ngap_DataForwardingResponseERABList(tvb, offset, &asn1_ctx, tree, hf_ngap_DataForwardingResponseERABList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DL_CP_SecurityInformation_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_ngap_DL_CP_SecurityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_DL_CP_SecurityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DL_NGU_TNLInformationReused_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_ngap_DL_NGU_TNLInformationReused(tvb, offset, &asn1_ctx, tree, hf_ngap_DL_NGU_TNLInformationReused_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_DirectForwardingPathAvailability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12605,6 +18261,22 @@ static int dissect_DirectForwardingPathAvailability_PDU(tvbuff_t *tvb _U_, packe offset += 7; offset >>= 3; return offset; } +static int dissect_EarlyStatusTransfer_TransparentContainer_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_ngap_EarlyStatusTransfer_TransparentContainer(tvb, offset, &asn1_ctx, tree, hf_ngap_EarlyStatusTransfer_TransparentContainer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_EDT_Session_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_ngap_EDT_Session(tvb, offset, &asn1_ctx, tree, hf_ngap_EDT_Session_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_EmergencyAreaIDListForRestart_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12621,6 +18293,22 @@ static int dissect_EmergencyFallbackIndicator_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } +static int dissect_Enhanced_CoverageRestriction_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_ngap_Enhanced_CoverageRestriction(tvb, offset, &asn1_ctx, tree, hf_ngap_Enhanced_CoverageRestriction_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Extended_ConnectedTime_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_ngap_Extended_ConnectedTime(tvb, offset, &asn1_ctx, tree, hf_ngap_Extended_ConnectedTime_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_EN_DCSONConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12637,6 +18325,14 @@ static int dissect_EndpointIPAddressAndPort_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_EndIndication_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_ngap_EndIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_EndIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_EUTRA_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; @@ -12645,6 +18341,30 @@ static int dissect_EUTRA_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot offset += 7; offset >>= 3; return offset; } +static int dissect_ExtendedPacketDelayBudget_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_ngap_ExtendedPacketDelayBudget(tvb, offset, &asn1_ctx, tree, hf_ngap_ExtendedPacketDelayBudget_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ExtendedRATRestrictionInformation_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_ngap_ExtendedRATRestrictionInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_ExtendedRATRestrictionInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ExtendedSliceSupportList_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_ngap_ExtendedSliceSupportList(tvb, offset, &asn1_ctx, tree, hf_ngap_ExtendedSliceSupportList_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_FiveG_S_TMSI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12661,6 +18381,30 @@ static int dissect_GlobalRANNodeID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_ offset += 7; offset >>= 3; return offset; } +static int dissect_GlobalTNGF_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_ngap_GlobalTNGF_ID(tvb, offset, &asn1_ctx, tree, hf_ngap_GlobalTNGF_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_GlobalTWIF_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_ngap_GlobalTWIF_ID(tvb, offset, &asn1_ctx, tree, hf_ngap_GlobalTWIF_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_GlobalW_AGF_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_ngap_GlobalW_AGF_ID(tvb, offset, &asn1_ctx, tree, hf_ngap_GlobalW_AGF_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GUAMI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12669,6 +18413,14 @@ static int dissect_GUAMI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tr offset += 7; offset >>= 3; return offset; } +static int dissect_GUAMIType_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_ngap_GUAMIType(tvb, offset, &asn1_ctx, tree, hf_ngap_GUAMIType_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_HandoverCommandTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12725,6 +18477,30 @@ static int dissect_HandoverType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p offset += 7; offset >>= 3; return offset; } +static int dissect_IAB_Authorized_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_ngap_IAB_Authorized(tvb, offset, &asn1_ctx, tree, hf_ngap_IAB_Authorized_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_IAB_Supported_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_ngap_IAB_Supported(tvb, offset, &asn1_ctx, tree, hf_ngap_IAB_Supported_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_IABNodeIndication_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_ngap_IABNodeIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_IABNodeIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_IMSVoiceSupportIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12749,6 +18525,14 @@ static int dissect_InfoOnRecommendedCellsAndRANNodesForPaging_PDU(tvbuff_t *tvb offset += 7; offset >>= 3; return offset; } +static int dissect_IntersystemSONConfigurationTransfer_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_ngap_IntersystemSONConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_IntersystemSONConfigurationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} int dissect_ngap_LastVisitedNGRANCellInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12773,6 +18557,30 @@ static int dissect_LocationReportingRequestType_PDU(tvbuff_t *tvb _U_, packet_in offset += 7; offset >>= 3; return offset; } +static int dissect_LTEM_Indication_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_ngap_LTEM_Indication(tvb, offset, &asn1_ctx, tree, hf_ngap_LTEM_Indication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_LTEV2XServicesAuthorized_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_ngap_LTEV2XServicesAuthorized(tvb, offset, &asn1_ctx, tree, hf_ngap_LTEV2XServicesAuthorized_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_LTEUESidelinkAggregateMaximumBitrate_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_ngap_LTEUESidelinkAggregateMaximumBitrate(tvb, offset, &asn1_ctx, tree, hf_ngap_LTEUESidelinkAggregateMaximumBitrate_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_MaskedIMEISV_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12805,6 +18613,22 @@ int dissect_ngap_MobilityRestrictionList_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } +static int dissect_MDTPLMNList_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_ngap_MDTPLMNList(tvb, offset, &asn1_ctx, tree, hf_ngap_MDTPLMNList_PDU); + offset += 7; offset >>= 3; + return offset; +} +int dissect_ngap_MDT_Configuration_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_ngap_MDT_Configuration(tvb, offset, &asn1_ctx, tree, hf_ngap_ngap_MDT_Configuration_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NAS_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12821,6 +18645,38 @@ static int dissect_NASSecurityParametersFromNGRAN_PDU(tvbuff_t *tvb _U_, packet_ offset += 7; offset >>= 3; return offset; } +static int dissect_NB_IoT_DefaultPagingDRX_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_ngap_NB_IoT_DefaultPagingDRX(tvb, offset, &asn1_ctx, tree, hf_ngap_NB_IoT_DefaultPagingDRX_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NB_IoT_PagingDRX_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_ngap_NB_IoT_PagingDRX(tvb, offset, &asn1_ctx, tree, hf_ngap_NB_IoT_PagingDRX_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NB_IoT_Paging_eDRXInfo_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_ngap_NB_IoT_Paging_eDRXInfo(tvb, offset, &asn1_ctx, tree, hf_ngap_NB_IoT_Paging_eDRXInfo_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NB_IoT_UEPriority_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_ngap_NB_IoT_UEPriority(tvb, offset, &asn1_ctx, tree, hf_ngap_NB_IoT_UEPriority_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NetworkInstance_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12837,6 +18693,14 @@ static int dissect_NewSecurityContextInd_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } +static int dissect_NotifySourceNGRANNode_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_ngap_NotifySourceNGRANNode(tvb, offset, &asn1_ctx, tree, hf_ngap_NotifySourceNGRANNode_PDU); + offset += 7; offset >>= 3; + return offset; +} int dissect_ngap_NGRAN_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; @@ -12861,6 +18725,46 @@ static int dissect_NGRANTraceID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p offset += 7; offset >>= 3; return offset; } +static int dissect_NID_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_ngap_NID(tvb, offset, &asn1_ctx, tree, hf_ngap_NID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NPN_AccessInformation_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_ngap_NPN_AccessInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_NPN_AccessInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NPN_MobilityInformation_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_ngap_NPN_MobilityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_NPN_MobilityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NPN_PagingAssistanceInformation_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_ngap_NPN_PagingAssistanceInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_NPN_PagingAssistanceInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NPN_Support_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_ngap_NPN_Support(tvb, offset, &asn1_ctx, tree, hf_ngap_NPN_Support_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NR_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; @@ -12885,6 +18789,22 @@ static int dissect_NumberOfBroadcastsRequested_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_NRV2XServicesAuthorized_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_ngap_NRV2XServicesAuthorized(tvb, offset, &asn1_ctx, tree, hf_ngap_NRV2XServicesAuthorized_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NRUESidelinkAggregateMaximumBitrate_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_ngap_NRUESidelinkAggregateMaximumBitrate(tvb, offset, &asn1_ctx, tree, hf_ngap_NRUESidelinkAggregateMaximumBitrate_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_OverloadResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12901,6 +18821,14 @@ static int dissect_OverloadStartNSSAIList_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_PagingAssisDataforCEcapabUE_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_ngap_PagingAssisDataforCEcapabUE(tvb, offset, &asn1_ctx, tree, hf_ngap_PagingAssisDataforCEcapabUE_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PagingDRX_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12925,6 +18853,14 @@ static int dissect_PagingPriority_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_PagingeDRXInformation_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_ngap_PagingeDRXInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_PagingeDRXInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PathSwitchRequestAcknowledgeTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12957,6 +18893,22 @@ static int dissect_PathSwitchRequestUnsuccessfulTransfer_PDU(tvbuff_t *tvb _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_PC5QoSParameters_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_ngap_PC5QoSParameters(tvb, offset, &asn1_ctx, tree, hf_ngap_PC5QoSParameters_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PrivacyIndicator_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_ngap_PrivacyIndicator(tvb, offset, &asn1_ctx, tree, hf_ngap_PrivacyIndicator_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionAggregateMaximumBitRate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12989,6 +18941,22 @@ static int dissect_PDUSessionResourceFailedToModifyListModRes_PDU(tvbuff_t *tvb offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionResourceFailedToResumeListRESReq_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_ngap_PDUSessionResourceFailedToResumeListRESReq(tvb, offset, &asn1_ctx, tree, hf_ngap_PDUSessionResourceFailedToResumeListRESReq_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionResourceFailedToResumeListRESRes_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_ngap_PDUSessionResourceFailedToResumeListRESRes(tvb, offset, &asn1_ctx, tree, hf_ngap_PDUSessionResourceFailedToResumeListRESRes_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionResourceFailedToSetupListCxtFail_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13213,6 +19181,22 @@ static int dissect_PDUSessionResourceReleaseResponseTransfer_PDU(tvbuff_t *tvb _ offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionResourceResumeListRESReq_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_ngap_PDUSessionResourceResumeListRESReq(tvb, offset, &asn1_ctx, tree, hf_ngap_PDUSessionResourceResumeListRESReq_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionResourceResumeListRESRes_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_ngap_PDUSessionResourceResumeListRESRes(tvb, offset, &asn1_ctx, tree, hf_ngap_PDUSessionResourceResumeListRESRes_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionResourceSecondaryRATUsageList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13285,6 +19269,14 @@ static int dissect_PDUSessionResourceSetupUnsuccessfulTransfer_PDU(tvbuff_t *tvb offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionResourceSuspendListSUSReq_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_ngap_PDUSessionResourceSuspendListSUSReq(tvb, offset, &asn1_ctx, tree, hf_ngap_PDUSessionResourceSuspendListSUSReq_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionResourceSwitchedList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13357,6 +19349,14 @@ static int dissect_QosFlowAddOrModifyRequestList_PDU(tvbuff_t *tvb _U_, packet_i offset += 7; offset >>= 3; return offset; } +static int dissect_QosMonitoringRequest_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_ngap_QosMonitoringRequest(tvb, offset, &asn1_ctx, tree, hf_ngap_QosMonitoringRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_QosFlowListWithCause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13365,6 +19365,14 @@ static int dissect_QosFlowListWithCause_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } +static int dissect_QosFlowPerTNLInformation_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_ngap_QosFlowPerTNLInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_QosFlowPerTNLInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_QosFlowPerTNLInformationList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13413,6 +19421,14 @@ static int dissect_RAN_UE_NGAP_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_RAT_Information_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_ngap_RAT_Information(tvb, offset, &asn1_ctx, tree, hf_ngap_RAT_Information_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_RedirectionVoiceFallback_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13421,6 +19437,22 @@ static int dissect_RedirectionVoiceFallback_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_RedundantPDUSessionInformation_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_ngap_RedundantPDUSessionInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_RedundantPDUSessionInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RedundantQosFlowIndicator_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_ngap_RedundantQosFlowIndicator(tvb, offset, &asn1_ctx, tree, hf_ngap_RedundantQosFlowIndicator_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_RelativeAMFCapacity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13445,6 +19477,14 @@ static int dissect_ResetType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot offset += 7; offset >>= 3; return offset; } +static int dissect_RGLevelWirelineAccessCharacteristics_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_ngap_RGLevelWirelineAccessCharacteristics(tvb, offset, &asn1_ctx, tree, hf_ngap_RGLevelWirelineAccessCharacteristics_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_RoutingID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13477,6 +19517,14 @@ static int dissect_RRCState_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto offset += 7; offset >>= 3; return offset; } +static int dissect_RIMInformationTransfer_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_ngap_RIMInformationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_RIMInformationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SCTP_TLAs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13541,6 +19589,14 @@ static int dissect_ServedGUAMIList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_ offset += 7; offset >>= 3; return offset; } +static int dissect_SgNB_UE_X2AP_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_ngap_SgNB_UE_X2AP_ID(tvb, offset, &asn1_ctx, tree, hf_ngap_SgNB_UE_X2AP_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SliceSupportList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13557,11 +19613,19 @@ static int dissect_S_NSSAI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_ offset += 7; offset >>= 3; return offset; } -static int dissect_SONConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { +int dissect_ngap_SONConfigurationTransfer_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_ngap_SONConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_ngap_SONConfigurationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SONInformationReport_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_ngap_SONConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_SONConfigurationTransfer_PDU); + offset = dissect_ngap_SONInformationReport(tvb, offset, &asn1_ctx, tree, hf_ngap_SONInformationReport_PDU); offset += 7; offset >>= 3; return offset; } @@ -13589,6 +19653,14 @@ static int dissect_SourceToTarget_AMFInformationReroute_PDU(tvbuff_t *tvb _U_, p offset += 7; offset >>= 3; return offset; } +static int dissect_SRVCCOperationPossible_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_ngap_SRVCCOperationPossible(tvb, offset, &asn1_ctx, tree, hf_ngap_SRVCCOperationPossible_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SupportedTAList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13597,6 +19669,30 @@ static int dissect_SupportedTAList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_ offset += 7; offset >>= 3; return offset; } +static int dissect_Suspend_Request_Indication_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_ngap_Suspend_Request_Indication(tvb, offset, &asn1_ctx, tree, hf_ngap_Suspend_Request_Indication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Suspend_Response_Indication_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_ngap_Suspend_Response_Indication(tvb, offset, &asn1_ctx, tree, hf_ngap_Suspend_Response_Indication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TAI_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_ngap_TAI(tvb, offset, &asn1_ctx, tree, hf_ngap_TAI_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_TAIListForPaging_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13629,6 +19725,22 @@ int dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_PDU(tvbu offset += 7; offset >>= 3; return offset; } +static int dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_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_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer(tvb, offset, &asn1_ctx, tree, hf_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TargetRNC_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_ngap_TargetRNC_ID(tvb, offset, &asn1_ctx, tree, hf_ngap_TargetRNC_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_TargetToSource_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13637,6 +19749,14 @@ static int dissect_TargetToSource_TransparentContainer_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_TargettoSource_Failure_TransparentContainer_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_ngap_TargettoSource_Failure_TransparentContainer(tvb, offset, &asn1_ctx, tree, hf_ngap_TargettoSource_Failure_TransparentContainer_PDU); + 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; @@ -13677,6 +19797,14 @@ static int dissect_TransportLayerAddress_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } +static int dissect_TSCTrafficCharacteristics_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_ngap_TSCTrafficCharacteristics(tvb, offset, &asn1_ctx, tree, hf_ngap_TSCTrafficCharacteristics_PDU); + 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; @@ -13693,6 +19821,14 @@ static int dissect_UE_associatedLogicalNG_connectionList_PDU(tvbuff_t *tvb _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_UECapabilityInfoRequest_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_ngap_UECapabilityInfoRequest(tvb, offset, &asn1_ctx, tree, hf_ngap_UECapabilityInfoRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UEContextRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13701,6 +19837,22 @@ static int dissect_UEContextRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U offset += 7; offset >>= 3; return offset; } +static int dissect_UE_DifferentiationInfo_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_ngap_UE_DifferentiationInfo(tvb, offset, &asn1_ctx, tree, hf_ngap_UE_DifferentiationInfo_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEHistoryInformationFromTheUE_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_ngap_UEHistoryInformationFromTheUE(tvb, offset, &asn1_ctx, tree, hf_ngap_UEHistoryInformationFromTheUE_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UE_NGAP_IDs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13741,6 +19893,22 @@ static int dissect_UERadioCapabilityForPaging_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } +static int dissect_UERadioCapabilityForPagingOfNB_IoT_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_ngap_UERadioCapabilityForPagingOfNB_IoT(tvb, offset, &asn1_ctx, tree, hf_ngap_UERadioCapabilityForPagingOfNB_IoT_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UERadioCapabilityID_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_ngap_UERadioCapabilityID(tvb, offset, &asn1_ctx, tree, hf_ngap_UERadioCapabilityID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UERetentionInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13757,6 +19925,22 @@ static int dissect_UESecurityCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_UE_UP_CIoT_Support_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_ngap_UE_UP_CIoT_Support(tvb, offset, &asn1_ctx, tree, hf_ngap_UE_UP_CIoT_Support_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UL_CP_SecurityInformation_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_ngap_UL_CP_SecurityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_UL_CP_SecurityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UL_NGU_UP_TNLModifyList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13805,6 +19989,14 @@ static int dissect_UPTransportLayerInformationPairList_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_URI_address_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_ngap_URI_address(tvb, offset, &asn1_ctx, tree, hf_ngap_URI_address_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UserLocationInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13813,6 +20005,30 @@ static int dissect_UserLocationInformation_PDU(tvbuff_t *tvb _U_, packet_info *p offset += 7; offset >>= 3; return offset; } +static int dissect_UserLocationInformationTNGF_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_ngap_UserLocationInformationTNGF(tvb, offset, &asn1_ctx, tree, hf_ngap_UserLocationInformationTNGF_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UserLocationInformationTWIF_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_ngap_UserLocationInformationTWIF(tvb, offset, &asn1_ctx, tree, hf_ngap_UserLocationInformationTWIF_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UserLocationInformationW_AGF_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_ngap_UserLocationInformationW_AGF(tvb, offset, &asn1_ctx, tree, hf_ngap_UserLocationInformationW_AGF_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_WarningAreaCoordinates_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13853,6 +20069,14 @@ static int dissect_WarningType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pr offset += 7; offset >>= 3; return offset; } +static int dissect_WUS_Assistance_Information_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_ngap_WUS_Assistance_Information(tvb, offset, &asn1_ctx, tree, hf_ngap_WUS_Assistance_Information_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionResourceSetupRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13973,6 +20197,54 @@ static int dissect_UEContextReleaseComplete_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextResumeRequest_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_ngap_UEContextResumeRequest(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextResumeRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextResumeResponse_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_ngap_UEContextResumeResponse(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextResumeResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextResumeFailure_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_ngap_UEContextResumeFailure(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextResumeFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextSuspendRequest_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_ngap_UEContextSuspendRequest(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextSuspendRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextSuspendResponse_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_ngap_UEContextSuspendResponse(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextSuspendResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextSuspendFailure_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_ngap_UEContextSuspendFailure(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextSuspendFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UEContextModificationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14005,6 +20277,30 @@ static int dissect_RRCInactiveTransitionReport_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_RetrieveUEInformation_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_ngap_RetrieveUEInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_RetrieveUEInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEInformationTransfer_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_ngap_UEInformationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UEInformationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RANCPRelocationIndication_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_ngap_RANCPRelocationIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_RANCPRelocationIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_HandoverRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14101,6 +20397,30 @@ static int dissect_HandoverCancelAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } +static int dissect_HandoverSuccess_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_ngap_HandoverSuccess(tvb, offset, &asn1_ctx, tree, hf_ngap_HandoverSuccess_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UplinkRANEarlyStatusTransfer_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_ngap_UplinkRANEarlyStatusTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UplinkRANEarlyStatusTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DownlinkRANEarlyStatusTransfer_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_ngap_DownlinkRANEarlyStatusTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_DownlinkRANEarlyStatusTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UplinkRANStatusTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14149,6 +20469,30 @@ static int dissect_UplinkNASTransport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_W_AGFIdentityInformation_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_ngap_W_AGFIdentityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_W_AGFIdentityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TNGFIdentityInformation_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_ngap_TNGFIdentityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_TNGFIdentityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TWIFIdentityInformation_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_ngap_TWIFIdentityInformation(tvb, offset, &asn1_ctx, tree, hf_ngap_TWIFIdentityInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NASNonDeliveryIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14493,6 +20837,54 @@ static int dissect_SecondaryRATDataUsageReport_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_UplinkRIMInformationTransfer_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_ngap_UplinkRIMInformationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UplinkRIMInformationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DownlinkRIMInformationTransfer_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_ngap_DownlinkRIMInformationTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_DownlinkRIMInformationTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ConnectionEstablishmentIndication_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_ngap_ConnectionEstablishmentIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_ConnectionEstablishmentIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UERadioCapabilityIDMappingRequest_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_ngap_UERadioCapabilityIDMappingRequest(tvb, offset, &asn1_ctx, tree, hf_ngap_UERadioCapabilityIDMappingRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UERadioCapabilityIDMappingResponse_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_ngap_UERadioCapabilityIDMappingResponse(tvb, offset, &asn1_ctx, tree, hf_ngap_UERadioCapabilityIDMappingResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AMFCPRelocationIndication_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_ngap_AMFCPRelocationIndication(tvb, offset, &asn1_ctx, tree, hf_ngap_AMFCPRelocationIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NGAP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14509,6 +20901,22 @@ static int dissect_PDUSessionResourceModifyIndicationUnsuccessfulTransfer_PDU(tv offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextResumeRequestTransfer_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_ngap_UEContextResumeRequestTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextResumeRequestTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextResumeResponseTransfer_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_ngap_UEContextResumeResponseTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextResumeResponseTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SecondaryRATDataUsageReportTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14517,10 +20925,18 @@ static int dissect_SecondaryRATDataUsageReportTransfer_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextSuspendRequestTransfer_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_ngap_UEContextSuspendRequestTransfer(tvb, offset, &asn1_ctx, tree, hf_ngap_UEContextSuspendRequestTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} /*--- End of included file: packet-ngap-fn.c ---*/ -#line 354 "./asn1/ngap/packet-ngap-template.c" +#line 455 "./asn1/ngap/packet-ngap-template.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { @@ -14617,6 +21033,8 @@ dissect_ngap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_ copy_address_wmem(wmem_file_scope(), &ngap_data->ngap_conv->addr_b, &pinfo->dst); ngap_data->ngap_conv->port_b = pinfo->destport; ngap_data->ngap_conv->ranmode_id_b = (GlobalRANNodeID_enum)-1; + ngap_data->ngap_conv->nbiot_ta = wmem_map_new(wmem_file_scope(), wmem_int64_hash, g_int64_equal); + ngap_data->ngap_conv->nbiot_ran_ue_ngap_id = wmem_tree_new(wmem_file_scope()); conversation_add_proto_data(conversation, proto_ngap, ngap_data->ngap_conv); } @@ -14748,6 +21166,8 @@ proto_reg_handoff_ngap(void) nr_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_paging_info", proto_ngap); nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_ngap); lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_ngap); + lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_ngap); + lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_ngap); dissector_add_for_decode_as("sctp.port", ngap_handle); dissector_add_uint("sctp.ppi", NGAP_PROTOCOL_ID, ngap_handle); Initialized=TRUE; @@ -14852,8 +21272,8 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.ies", id_SerialNumber, create_dissector_handle(dissect_SerialNumber_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_ServedGUAMIList, create_dissector_handle(dissect_ServedGUAMIList_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_SliceSupportList, create_dissector_handle(dissect_SliceSupportList_PDU, proto_ngap)); - dissector_add_uint("ngap.ies", id_SONConfigurationTransferDL, create_dissector_handle(dissect_SONConfigurationTransfer_PDU, proto_ngap)); - dissector_add_uint("ngap.ies", id_SONConfigurationTransferUL, create_dissector_handle(dissect_SONConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_SONConfigurationTransferDL, create_dissector_handle(dissect_ngap_SONConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_SONConfigurationTransferUL, create_dissector_handle(dissect_ngap_SONConfigurationTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_SourceAMF_UE_NGAP_ID, create_dissector_handle(dissect_AMF_UE_NGAP_ID_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_SourceToTarget_TransparentContainer, create_dissector_handle(dissect_SourceToTarget_TransparentContainer_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_SupportedTAList, create_dissector_handle(dissect_SupportedTAList_PDU, proto_ngap)); @@ -14907,6 +21327,73 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.ies", id_NGRAN_TNLAssociationToRemoveList, create_dissector_handle(dissect_NGRAN_TNLAssociationToRemoveList_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_EndpointIPAddressAndPort, create_dissector_handle(dissect_EndpointIPAddressAndPort_PDU, proto_ngap)); dissector_add_uint("ngap.ies", id_SourceToTarget_AMFInformationReroute, create_dissector_handle(dissect_SourceToTarget_AMFInformationReroute_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RIMInformationTransfer, create_dissector_handle(dissect_RIMInformationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_SRVCCOperationPossible, create_dissector_handle(dissect_SRVCCOperationPossible_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TargetRNC_ID, create_dissector_handle(dissect_TargetRNC_ID_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_AdditionalRedundantUL_NGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformationList_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RedundantCommonNetworkInstance, create_dissector_handle(dissect_CommonNetworkInstance_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RedundantUL_NGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RedundantPDUSessionInformation, create_dissector_handle(dissect_RedundantPDUSessionInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_IAB_Authorized, create_dissector_handle(dissect_IAB_Authorized_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_IAB_Supported, create_dissector_handle(dissect_IAB_Supported_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_IABNodeIndication, create_dissector_handle(dissect_IABNodeIndication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NB_IoT_PagingDRX, create_dissector_handle(dissect_NB_IoT_PagingDRX_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NB_IoT_Paging_eDRXInfo, create_dissector_handle(dissect_NB_IoT_Paging_eDRXInfo_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NB_IoT_DefaultPagingDRX, create_dissector_handle(dissect_NB_IoT_DefaultPagingDRX_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_Enhanced_CoverageRestriction, create_dissector_handle(dissect_Enhanced_CoverageRestriction_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_Extended_ConnectedTime, create_dissector_handle(dissect_Extended_ConnectedTime_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PagingAssisDataforCEcapabUE, create_dissector_handle(dissect_PagingAssisDataforCEcapabUE_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_WUS_Assistance_Information, create_dissector_handle(dissect_WUS_Assistance_Information_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UE_DifferentiationInfo, create_dissector_handle(dissect_UE_DifferentiationInfo_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NB_IoT_UEPriority, create_dissector_handle(dissect_NB_IoT_UEPriority_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UL_CP_SecurityInformation, create_dissector_handle(dissect_UL_CP_SecurityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_DL_CP_SecurityInformation, create_dissector_handle(dissect_DL_CP_SecurityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TAI, create_dissector_handle(dissect_TAI_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_LTEV2XServicesAuthorized, create_dissector_handle(dissect_LTEV2XServicesAuthorized_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NRV2XServicesAuthorized, create_dissector_handle(dissect_NRV2XServicesAuthorized_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_LTEUESidelinkAggregateMaximumBitrate, create_dissector_handle(dissect_LTEUESidelinkAggregateMaximumBitrate_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NRUESidelinkAggregateMaximumBitrate, create_dissector_handle(dissect_NRUESidelinkAggregateMaximumBitrate_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PC5QoSParameters, create_dissector_handle(dissect_PC5QoSParameters_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_CEmodeBrestricted, create_dissector_handle(dissect_CEmodeBrestricted_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PagingeDRXInformation, create_dissector_handle(dissect_PagingeDRXInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_CEmodeBSupport_Indicator, create_dissector_handle(dissect_CEmodeBSupport_Indicator_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_LTEM_Indication, create_dissector_handle(dissect_LTEM_Indication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_EndIndication, create_dissector_handle(dissect_EndIndication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_EDT_Session, create_dissector_handle(dissect_EDT_Session_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UECapabilityInfoRequest, create_dissector_handle(dissect_UECapabilityInfoRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PDUSessionResourceFailedToResumeListRESReq, create_dissector_handle(dissect_PDUSessionResourceFailedToResumeListRESReq_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PDUSessionResourceFailedToResumeListRESRes, create_dissector_handle(dissect_PDUSessionResourceFailedToResumeListRESRes_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PDUSessionResourceSuspendListSUSReq, create_dissector_handle(dissect_PDUSessionResourceSuspendListSUSReq_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PDUSessionResourceResumeListRESReq, create_dissector_handle(dissect_PDUSessionResourceResumeListRESReq_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PDUSessionResourceResumeListRESRes, create_dissector_handle(dissect_PDUSessionResourceResumeListRESRes_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UE_UP_CIoT_Support, create_dissector_handle(dissect_UE_UP_CIoT_Support_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_Suspend_Request_Indication, create_dissector_handle(dissect_Suspend_Request_Indication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_Suspend_Response_Indication, create_dissector_handle(dissect_Suspend_Response_Indication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RRC_Resume_Cause, create_dissector_handle(dissect_RRCEstablishmentCause_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_RGLevelWirelineAccessCharacteristics, create_dissector_handle(dissect_RGLevelWirelineAccessCharacteristics_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_W_AGFIdentityInformation, create_dissector_handle(dissect_W_AGFIdentityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_GlobalTNGF_ID, create_dissector_handle(dissect_GlobalTNGF_ID_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_GlobalTWIF_ID, create_dissector_handle(dissect_GlobalTWIF_ID_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_GlobalW_AGF_ID, create_dissector_handle(dissect_GlobalW_AGF_ID_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UserLocationInformationW_AGF, create_dissector_handle(dissect_UserLocationInformationW_AGF_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UserLocationInformationTNGF, create_dissector_handle(dissect_UserLocationInformationTNGF_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_AuthenticatedIndication, create_dissector_handle(dissect_AuthenticatedIndication_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TNGFIdentityInformation, create_dissector_handle(dissect_TNGFIdentityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TWIFIdentityInformation, create_dissector_handle(dissect_TWIFIdentityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UserLocationInformationTWIF, create_dissector_handle(dissect_UserLocationInformationTWIF_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_SelectedPLMNIdentity, create_dissector_handle(dissect_PLMNIdentity_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_IntersystemSONConfigurationTransferDL, create_dissector_handle(dissect_IntersystemSONConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_IntersystemSONConfigurationTransferUL, create_dissector_handle(dissect_IntersystemSONConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_SONInformationReport, create_dissector_handle(dissect_SONInformationReport_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_ManagementBasedMDTPLMNList, create_dissector_handle(dissect_MDTPLMNList_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_PrivacyIndicator, create_dissector_handle(dissect_PrivacyIndicator_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TraceCollectionEntityURI, create_dissector_handle(dissect_URI_address_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NPN_AccessInformation, create_dissector_handle(dissect_NPN_AccessInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_TargettoSource_Failure_TransparentContainer, create_dissector_handle(dissect_TargettoSource_Failure_TransparentContainer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UERadioCapabilityID, create_dissector_handle(dissect_UERadioCapabilityID_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_UERadioCapability_EUTRA_Format, create_dissector_handle(dissect_UERadioCapability_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_EarlyStatusTransfer_TransparentContainer, create_dissector_handle(dissect_EarlyStatusTransfer_TransparentContainer_PDU, proto_ngap)); + dissector_add_uint("ngap.ies", id_NotifySourceNGRANNode, create_dissector_handle(dissect_NotifySourceNGRANNode_PDU, proto_ngap)); dissector_add_uint("ngap.extension", id_SecondaryRATUsageInformation, create_dissector_handle(dissect_SecondaryRATUsageInformation_PDU, proto_ngap)); dissector_add_uint("ngap.extension", id_PDUSessionResourceReleaseResponseTransfer, create_dissector_handle(dissect_PDUSessionResourceReleaseResponseTransfer_OCTET_STRING_PDU, proto_ngap)); dissector_add_uint("ngap.extension", id_S_NSSAI, create_dissector_handle(dissect_S_NSSAI_PDU, proto_ngap)); @@ -14926,15 +21413,53 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.extension", id_LocationReportingAdditionalInfo, create_dissector_handle(dissect_LocationReportingAdditionalInfo_PDU, proto_ngap)); dissector_add_uint("ngap.extension", id_AdditionalULForwardingUPTNLInformation, create_dissector_handle(dissect_UPTransportLayerInformationList_PDU, proto_ngap)); dissector_add_uint("ngap.extension", id_SCTP_TLAs, create_dissector_handle(dissect_SCTP_TLAs_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_DataForwardingResponseERABList, create_dissector_handle(dissect_DataForwardingResponseERABList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_GUAMIType, create_dissector_handle(dissect_GUAMIType_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RAT_Information, create_dissector_handle(dissect_RAT_Information_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_ExtendedRATRestrictionInformation, create_dissector_handle(dissect_ExtendedRATRestrictionInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_QosMonitoringRequest, create_dissector_handle(dissect_QosMonitoringRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_SgNB_UE_X2AP_ID, create_dissector_handle(dissect_SgNB_UE_X2AP_ID_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_AdditionalRedundantDL_NGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_AdditionalRedundantDLQosFlowPerTNLInformation, create_dissector_handle(dissect_QosFlowPerTNLInformationList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_AdditionalRedundantNGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformationPairList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_CNPacketDelayBudgetDL, create_dissector_handle(dissect_ExtendedPacketDelayBudget_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_CNPacketDelayBudgetUL, create_dissector_handle(dissect_ExtendedPacketDelayBudget_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_ExtendedPacketDelayBudget, create_dissector_handle(dissect_ExtendedPacketDelayBudget_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RedundantDL_NGU_TNLInformationReused, create_dissector_handle(dissect_DL_NGU_TNLInformationReused_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RedundantDL_NGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RedundantDLQosFlowPerTNLInformation, create_dissector_handle(dissect_QosFlowPerTNLInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RedundantQosFlowIndicator, create_dissector_handle(dissect_RedundantQosFlowIndicator_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_RedundantUL_NGU_UP_TNLInformation, create_dissector_handle(dissect_UPTransportLayerInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_TSCTrafficCharacteristics, create_dissector_handle(dissect_TSCTrafficCharacteristics_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_UsedRSNInformation, create_dissector_handle(dissect_RedundantPDUSessionInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_PagingAssisDataforCEcapabUE, create_dissector_handle(dissect_PagingAssisDataforCEcapabUE_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_UERadioCapabilityForPagingOfNB_IoT, create_dissector_handle(dissect_UERadioCapabilityForPagingOfNB_IoT_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_AlternativeQoSParaSetList, create_dissector_handle(dissect_AlternativeQoSParaSetList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_CurrentQoSParaSetIndex, create_dissector_handle(dissect_AlternativeQoSParaSetIndex_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_PagingeDRXInformation, create_dissector_handle(dissect_PagingeDRXInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_UEHistoryInformationFromTheUE, create_dissector_handle(dissect_UEHistoryInformationFromTheUE_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_MDTConfiguration, create_dissector_handle(dissect_ngap_MDT_Configuration_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_TraceCollectionEntityURI, create_dissector_handle(dissect_URI_address_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_NPN_Support, create_dissector_handle(dissect_NPN_Support_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_NPN_PagingAssistanceInformation, create_dissector_handle(dissect_NPN_PagingAssistanceInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_NPN_MobilityInformation, create_dissector_handle(dissect_NPN_MobilityInformation_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_NID, create_dissector_handle(dissect_NID_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_DAPSRequestInfo, create_dissector_handle(dissect_DAPSRequestInfo_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_DAPSResponseInfoList, create_dissector_handle(dissect_DAPSResponseInfoList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_ExtendedSliceSupportList, create_dissector_handle(dissect_ExtendedSliceSupportList_PDU, proto_ngap)); + dissector_add_uint("ngap.extension", id_ExtendedTAISliceSupportList, create_dissector_handle(dissect_ExtendedSliceSupportList_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_AMFConfigurationUpdate, create_dissector_handle(dissect_AMFConfigurationUpdate_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_AMFConfigurationUpdate, create_dissector_handle(dissect_AMFConfigurationUpdateAcknowledge_PDU, proto_ngap)); dissector_add_uint("ngap.proc.uout", id_AMFConfigurationUpdate, create_dissector_handle(dissect_AMFConfigurationUpdateFailure_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_AMFCPRelocationIndication, create_dissector_handle(dissect_AMFCPRelocationIndication_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_AMFStatusIndication, create_dissector_handle(dissect_AMFStatusIndication_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_CellTrafficTrace, create_dissector_handle(dissect_CellTrafficTrace_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_ConnectionEstablishmentIndication, create_dissector_handle(dissect_ConnectionEstablishmentIndication_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DeactivateTrace, create_dissector_handle(dissect_DeactivateTrace_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DownlinkNASTransport, create_dissector_handle(dissect_DownlinkNASTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DownlinkNonUEAssociatedNRPPaTransport, create_dissector_handle(dissect_DownlinkNonUEAssociatedNRPPaTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DownlinkRANConfigurationTransfer, create_dissector_handle(dissect_DownlinkRANConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_DownlinkRANEarlyStatusTransfer, create_dissector_handle(dissect_DownlinkRANEarlyStatusTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DownlinkRANStatusTransfer, create_dissector_handle(dissect_DownlinkRANStatusTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_DownlinkUEAssociatedNRPPaTransport, create_dissector_handle(dissect_DownlinkUEAssociatedNRPPaTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_ErrorIndication, create_dissector_handle(dissect_ErrorIndication_PDU, proto_ngap)); @@ -14947,6 +21472,7 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.proc.imsg", id_HandoverResourceAllocation, create_dissector_handle(dissect_HandoverRequest_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_HandoverResourceAllocation, create_dissector_handle(dissect_HandoverRequestAcknowledge_PDU, proto_ngap)); dissector_add_uint("ngap.proc.uout", id_HandoverResourceAllocation, create_dissector_handle(dissect_HandoverFailure_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_HandoverSuccess, create_dissector_handle(dissect_HandoverSuccess_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_InitialContextSetup, create_dissector_handle(dissect_InitialContextSetupRequest_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_InitialContextSetup, create_dissector_handle(dissect_InitialContextSetupResponse_PDU, proto_ngap)); dissector_add_uint("ngap.proc.uout", id_InitialContextSetup, create_dissector_handle(dissect_InitialContextSetupFailure_PDU, proto_ngap)); @@ -14983,7 +21509,9 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.proc.imsg", id_RANConfigurationUpdate, create_dissector_handle(dissect_RANConfigurationUpdate_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_RANConfigurationUpdate, create_dissector_handle(dissect_RANConfigurationUpdateAcknowledge_PDU, proto_ngap)); dissector_add_uint("ngap.proc.uout", id_RANConfigurationUpdate, create_dissector_handle(dissect_RANConfigurationUpdateFailure_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_RANCPRelocationIndication, create_dissector_handle(dissect_RANCPRelocationIndication_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_RerouteNASRequest, create_dissector_handle(dissect_RerouteNASRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_RetrieveUEInformation, create_dissector_handle(dissect_RetrieveUEInformation_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_RRCInactiveTransitionReport, create_dissector_handle(dissect_RRCInactiveTransitionReport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_SecondaryRATDataUsageReport, create_dissector_handle(dissect_SecondaryRATDataUsageReport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_TraceFailureIndication, create_dissector_handle(dissect_TraceFailureIndication_PDU, proto_ngap)); @@ -14994,17 +21522,29 @@ proto_reg_handoff_ngap(void) dissector_add_uint("ngap.proc.imsg", id_UEContextRelease, create_dissector_handle(dissect_UEContextReleaseCommand_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_UEContextRelease, create_dissector_handle(dissect_UEContextReleaseComplete_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UEContextReleaseRequest, create_dissector_handle(dissect_UEContextReleaseRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UEContextResume, create_dissector_handle(dissect_UEContextResumeRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.sout", id_UEContextResume, create_dissector_handle(dissect_UEContextResumeResponse_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.uout", id_UEContextResume, create_dissector_handle(dissect_UEContextResumeFailure_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UEContextSuspend, create_dissector_handle(dissect_UEContextSuspendRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.sout", id_UEContextSuspend, create_dissector_handle(dissect_UEContextSuspendResponse_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.uout", id_UEContextSuspend, create_dissector_handle(dissect_UEContextSuspendFailure_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UEInformationTransfer, create_dissector_handle(dissect_UEInformationTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UERadioCapabilityCheck, create_dissector_handle(dissect_UERadioCapabilityCheckRequest_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_UERadioCapabilityCheck, create_dissector_handle(dissect_UERadioCapabilityCheckResponse_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UERadioCapabilityIDMapping, create_dissector_handle(dissect_UERadioCapabilityIDMappingRequest_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.sout", id_UERadioCapabilityIDMapping, create_dissector_handle(dissect_UERadioCapabilityIDMappingResponse_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UERadioCapabilityInfoIndication, create_dissector_handle(dissect_UERadioCapabilityInfoIndication_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UETNLABindingRelease, create_dissector_handle(dissect_UETNLABindingReleaseRequest_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UplinkNASTransport, create_dissector_handle(dissect_UplinkNASTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UplinkNonUEAssociatedNRPPaTransport, create_dissector_handle(dissect_UplinkNonUEAssociatedNRPPaTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UplinkRANConfigurationTransfer, create_dissector_handle(dissect_UplinkRANConfigurationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UplinkRANEarlyStatusTransfer, create_dissector_handle(dissect_UplinkRANEarlyStatusTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UplinkRANStatusTransfer, create_dissector_handle(dissect_UplinkRANStatusTransfer_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_UplinkUEAssociatedNRPPaTransport, create_dissector_handle(dissect_UplinkUEAssociatedNRPPaTransport_PDU, proto_ngap)); dissector_add_uint("ngap.proc.imsg", id_WriteReplaceWarning, create_dissector_handle(dissect_WriteReplaceWarningRequest_PDU, proto_ngap)); dissector_add_uint("ngap.proc.sout", id_WriteReplaceWarning, create_dissector_handle(dissect_WriteReplaceWarningResponse_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_UplinkRIMInformationTransfer, create_dissector_handle(dissect_UplinkRIMInformationTransfer_PDU, proto_ngap)); + dissector_add_uint("ngap.proc.imsg", id_DownlinkRIMInformationTransfer, create_dissector_handle(dissect_DownlinkRIMInformationTransfer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "PDU_RES_SETUP_REQ", create_dissector_handle(dissect_PDUSessionResourceSetupRequestTransfer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "PDU_RES_SETUP_RSP", create_dissector_handle(dissect_PDUSessionResourceSetupResponseTransfer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "PDU_RES_SETUP_FAIL", create_dissector_handle(dissect_PDUSessionResourceSetupUnsuccessfulTransfer_PDU, proto_ngap)); @@ -15029,13 +21569,13 @@ proto_reg_handoff_ngap(void) dissector_add_string("ngap.n2_ie_type", "SRC_TO_TAR_CONTAINER", create_dissector_handle(dissect_SourceToTarget_TransparentContainer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "TAR_TO_SRC_CONTAINER", create_dissector_handle(dissect_TargetToSource_TransparentContainer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "RAN_STATUS_TRANS_CONTAINER", create_dissector_handle(dissect_RANStatusTransfer_TransparentContainer_PDU, proto_ngap)); - dissector_add_string("ngap.n2_ie_type", "SON_CONFIG_TRANSFER", create_dissector_handle(dissect_SONConfigurationTransfer_PDU, proto_ngap)); + dissector_add_string("ngap.n2_ie_type", "SON_CONFIG_TRANSFER", create_dissector_handle(dissect_ngap_SONConfigurationTransfer_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "NRPPA_PDU", create_dissector_handle(dissect_NRPPa_PDU_PDU, proto_ngap)); dissector_add_string("ngap.n2_ie_type", "UE_RADIO_CAPABILITY", create_dissector_handle(dissect_UERadioCapability_PDU, proto_ngap)); /*--- End of included file: packet-ngap-dis-tab.c ---*/ -#line 585 "./asn1/ngap/packet-ngap-template.c" +#line 690 "./asn1/ngap/packet-ngap-template.c" dissector_add_string("media_type", "application/vnd.3gpp.ngap", ngap_media_type_handle); } else { @@ -15115,9 +21655,13 @@ void proto_register_ngap(void) { { "nR", "ngap.RATRestrictionInformation.nR", FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x40, NULL, HFILL }}, + { &hf_ngap_RATRestrictionInformation_nR_unlicensed, + { "nR-unlicensed", "ngap.RATRestrictionInformation.nR_unlicensed", + FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20, + NULL, HFILL }}, { &hf_ngap_RATRestrictionInformation_reserved, { "reserved", "ngap.RATRestrictionInformation.reserved", - FT_UINT8, BASE_HEX, NULL, 0x3f, + FT_UINT8, BASE_HEX, NULL, 0x1f, NULL, HFILL }}, { &hf_ngap_NrencyptionAlgorithms_nea1, { "128-NEA1", "ngap.NrencyptionAlgorithms.nea1", @@ -15183,6 +21727,46 @@ void proto_register_ngap(void) { { "Reserved", "ngap.EUTRAintegrityProtectionAlgorithms.reserved", FT_UINT16, BASE_HEX, NULL, 0x1fff, NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M1, + { "M1", "ngap.MeasurementsToActivate.M1", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x80, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M2, + { "M2", "ngap.MeasurementsToActivate.M2", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x40, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M4, + { "M4", "ngap.MeasurementsToActivate.M4", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x20, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M5, + { "M5", "ngap.MeasurementsToActivate.M5", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x10, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M6, + { "M6", "ngap.MeasurementsToActivate.M6", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x08, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M7, + { "M7", "ngap.MeasurementsToActivate.M7", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x04, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_M1_from_event, + { "M1 from event", "ngap.MeasurementsToActivate.M1_from_event", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x02, + NULL, HFILL }}, + { &hf_ngap_MeasurementsToActivate_reserved, + { "Reserved", "ngap.MeasurementsToActivate.reserved", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_ngap_MDT_Location_Information_GNSS, + { "GNSS", "ngap.MDT_Location_Information.GNSS", + FT_BOOLEAN, 8, TFS(&tfs_activated_deactivated), 0x80, + NULL, HFILL }}, + { &hf_ngap_MDT_Location_Information_reserved, + { "Reserved", "ngap.MDT_Location_Information.reserved", + FT_BOOLEAN, 8, NULL, 0x7f, + NULL, HFILL }}, /*--- Included file: packet-ngap-hfarr.c ---*/ #line 1 "./asn1/ngap/packet-ngap-hfarr.c" @@ -15194,6 +21778,14 @@ void proto_register_ngap(void) { { "AllowedNSSAI", "ngap.AllowedNSSAI", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_AlternativeQoSParaSetIndex_PDU, + { "AlternativeQoSParaSetIndex", "ngap.AlternativeQoSParaSetIndex", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_AlternativeQoSParaSetList_PDU, + { "AlternativeQoSParaSetList", "ngap.AlternativeQoSParaSetList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_AMFName_PDU, { "AMFName", "ngap.AMFName", FT_STRING, BASE_NONE, NULL, 0, @@ -15230,6 +21822,10 @@ void proto_register_ngap(void) { { "AssociatedQosFlowList", "ngap.AssociatedQosFlowList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_AuthenticatedIndication_PDU, + { "AuthenticatedIndication", "ngap.AuthenticatedIndication", + FT_UINT32, BASE_DEC, VALS(ngap_AuthenticatedIndication_vals), 0, + NULL, HFILL }}, { &hf_ngap_BroadcastCancelledAreaList_PDU, { "BroadcastCancelledAreaList", "ngap.BroadcastCancelledAreaList", FT_UINT32, BASE_DEC, VALS(ngap_BroadcastCancelledAreaList_vals), 0, @@ -15250,6 +21846,14 @@ void proto_register_ngap(void) { { "CellIDListForRestart", "ngap.CellIDListForRestart", FT_UINT32, BASE_DEC, VALS(ngap_CellIDListForRestart_vals), 0, NULL, HFILL }}, + { &hf_ngap_CEmodeBSupport_Indicator_PDU, + { "CEmodeBSupport-Indicator", "ngap.CEmodeBSupport_Indicator", + FT_UINT32, BASE_DEC, VALS(ngap_CEmodeBSupport_Indicator_vals), 0, + NULL, HFILL }}, + { &hf_ngap_CEmodeBrestricted_PDU, + { "CEmodeBrestricted", "ngap.CEmodeBrestricted", + FT_UINT32, BASE_DEC, VALS(ngap_CEmodeBrestricted_vals), 0, + NULL, HFILL }}, { &hf_ngap_CNAssistedRANTuning_PDU, { "CNAssistedRANTuning", "ngap.CNAssistedRANTuning_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15290,10 +21894,38 @@ void proto_register_ngap(void) { { "DataForwardingNotPossible", "ngap.DataForwardingNotPossible", FT_UINT32, BASE_DEC, VALS(ngap_DataForwardingNotPossible_vals), 0, NULL, HFILL }}, + { &hf_ngap_DAPSRequestInfo_PDU, + { "DAPSRequestInfo", "ngap.DAPSRequestInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DAPSResponseInfoList_PDU, + { "DAPSResponseInfoList", "ngap.DAPSResponseInfoList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DataForwardingResponseERABList_PDU, + { "DataForwardingResponseERABList", "ngap.DataForwardingResponseERABList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DL_CP_SecurityInformation_PDU, + { "DL-CP-SecurityInformation", "ngap.DL_CP_SecurityInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DL_NGU_TNLInformationReused_PDU, + { "DL-NGU-TNLInformationReused", "ngap.DL_NGU_TNLInformationReused", + FT_UINT32, BASE_DEC, VALS(ngap_DL_NGU_TNLInformationReused_vals), 0, + NULL, HFILL }}, { &hf_ngap_DirectForwardingPathAvailability_PDU, { "DirectForwardingPathAvailability", "ngap.DirectForwardingPathAvailability", FT_UINT32, BASE_DEC, VALS(ngap_DirectForwardingPathAvailability_vals), 0, NULL, HFILL }}, + { &hf_ngap_EarlyStatusTransfer_TransparentContainer_PDU, + { "EarlyStatusTransfer-TransparentContainer", "ngap.EarlyStatusTransfer_TransparentContainer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_EDT_Session_PDU, + { "EDT-Session", "ngap.EDT_Session", + FT_UINT32, BASE_DEC, VALS(ngap_EDT_Session_vals), 0, + NULL, HFILL }}, { &hf_ngap_EmergencyAreaIDListForRestart_PDU, { "EmergencyAreaIDListForRestart", "ngap.EmergencyAreaIDListForRestart", FT_UINT32, BASE_DEC, NULL, 0, @@ -15302,6 +21934,14 @@ void proto_register_ngap(void) { { "EmergencyFallbackIndicator", "ngap.EmergencyFallbackIndicator_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_Enhanced_CoverageRestriction_PDU, + { "Enhanced-CoverageRestriction", "ngap.Enhanced_CoverageRestriction", + FT_UINT32, BASE_DEC, VALS(ngap_Enhanced_CoverageRestriction_vals), 0, + NULL, HFILL }}, + { &hf_ngap_Extended_ConnectedTime_PDU, + { "Extended-ConnectedTime", "ngap.Extended_ConnectedTime", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, + NULL, HFILL }}, { &hf_ngap_EN_DCSONConfigurationTransfer_PDU, { "EN-DCSONConfigurationTransfer", "ngap.EN_DCSONConfigurationTransfer", FT_BYTES, BASE_NONE, NULL, 0, @@ -15310,10 +21950,26 @@ void proto_register_ngap(void) { { "EndpointIPAddressAndPort", "ngap.EndpointIPAddressAndPort_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_EndIndication_PDU, + { "EndIndication", "ngap.EndIndication", + FT_UINT32, BASE_DEC, VALS(ngap_EndIndication_vals), 0, + NULL, HFILL }}, { &hf_ngap_EUTRA_CGI_PDU, { "EUTRA-CGI", "ngap.EUTRA_CGI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_ExtendedPacketDelayBudget_PDU, + { "ExtendedPacketDelayBudget", "ngap.ExtendedPacketDelayBudget", + FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_ExtendedPacketDelayBudget_fmt), 0, + NULL, HFILL }}, + { &hf_ngap_ExtendedRATRestrictionInformation_PDU, + { "ExtendedRATRestrictionInformation", "ngap.ExtendedRATRestrictionInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_ExtendedSliceSupportList_PDU, + { "ExtendedSliceSupportList", "ngap.ExtendedSliceSupportList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_FiveG_S_TMSI_PDU, { "FiveG-S-TMSI", "ngap.FiveG_S_TMSI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15322,10 +21978,26 @@ void proto_register_ngap(void) { { "GlobalRANNodeID", "ngap.GlobalRANNodeID", FT_UINT32, BASE_DEC, VALS(ngap_GlobalRANNodeID_vals), 0, NULL, HFILL }}, + { &hf_ngap_GlobalTNGF_ID_PDU, + { "GlobalTNGF-ID", "ngap.GlobalTNGF_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_GlobalTWIF_ID_PDU, + { "GlobalTWIF-ID", "ngap.GlobalTWIF_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_GlobalW_AGF_ID_PDU, + { "GlobalW-AGF-ID", "ngap.GlobalW_AGF_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_GUAMI_PDU, { "GUAMI", "ngap.GUAMI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_GUAMIType_PDU, + { "GUAMIType", "ngap.GUAMIType", + FT_UINT32, BASE_DEC, VALS(ngap_GUAMIType_vals), 0, + NULL, HFILL }}, { &hf_ngap_HandoverCommandTransfer_PDU, { "HandoverCommandTransfer", "ngap.HandoverCommandTransfer_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15354,6 +22026,18 @@ void proto_register_ngap(void) { { "HandoverType", "ngap.HandoverType", FT_UINT32, BASE_DEC, VALS(ngap_HandoverType_vals), 0, NULL, HFILL }}, + { &hf_ngap_IAB_Authorized_PDU, + { "IAB-Authorized", "ngap.IAB_Authorized", + FT_UINT32, BASE_DEC, VALS(ngap_IAB_Authorized_vals), 0, + NULL, HFILL }}, + { &hf_ngap_IAB_Supported_PDU, + { "IAB-Supported", "ngap.IAB_Supported", + FT_UINT32, BASE_DEC, VALS(ngap_IAB_Supported_vals), 0, + NULL, HFILL }}, + { &hf_ngap_IABNodeIndication_PDU, + { "IABNodeIndication", "ngap.IABNodeIndication", + FT_UINT32, BASE_DEC, VALS(ngap_IABNodeIndication_vals), 0, + NULL, HFILL }}, { &hf_ngap_IMSVoiceSupportIndicator_PDU, { "IMSVoiceSupportIndicator", "ngap.IMSVoiceSupportIndicator", FT_UINT32, BASE_DEC, VALS(ngap_IMSVoiceSupportIndicator_vals), 0, @@ -15366,6 +22050,10 @@ void proto_register_ngap(void) { { "InfoOnRecommendedCellsAndRANNodesForPaging", "ngap.InfoOnRecommendedCellsAndRANNodesForPaging_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_IntersystemSONConfigurationTransfer_PDU, + { "IntersystemSONConfigurationTransfer", "ngap.IntersystemSONConfigurationTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_ngap_LastVisitedNGRANCellInformation_PDU, { "LastVisitedNGRANCellInformation", "ngap.LastVisitedNGRANCellInformation_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15378,6 +22066,18 @@ void proto_register_ngap(void) { { "LocationReportingRequestType", "ngap.LocationReportingRequestType_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_LTEM_Indication_PDU, + { "LTEM-Indication", "ngap.LTEM_Indication", + FT_UINT32, BASE_DEC, VALS(ngap_LTEM_Indication_vals), 0, + NULL, HFILL }}, + { &hf_ngap_LTEV2XServicesAuthorized_PDU, + { "LTEV2XServicesAuthorized", "ngap.LTEV2XServicesAuthorized_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_LTEUESidelinkAggregateMaximumBitrate_PDU, + { "LTEUESidelinkAggregateMaximumBitrate", "ngap.LTEUESidelinkAggregateMaximumBitrate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_MaskedIMEISV_PDU, { "MaskedIMEISV", "ngap.MaskedIMEISV", FT_BYTES, BASE_NONE, NULL, 0, @@ -15394,6 +22094,14 @@ void proto_register_ngap(void) { { "MobilityRestrictionList", "ngap.MobilityRestrictionList_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_MDTPLMNList_PDU, + { "MDTPLMNList", "ngap.MDTPLMNList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_ngap_MDT_Configuration_PDU, + { "MDT-Configuration", "ngap.MDT_Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_NAS_PDU_PDU, { "NAS-PDU", "ngap.NAS_PDU", FT_BYTES, BASE_NONE, NULL, 0, @@ -15402,6 +22110,22 @@ void proto_register_ngap(void) { { "NASSecurityParametersFromNGRAN", "ngap.NASSecurityParametersFromNGRAN", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_NB_IoT_DefaultPagingDRX_PDU, + { "NB-IoT-DefaultPagingDRX", "ngap.NB_IoT_DefaultPagingDRX", + FT_UINT32, BASE_DEC, VALS(ngap_NB_IoT_DefaultPagingDRX_vals), 0, + NULL, HFILL }}, + { &hf_ngap_NB_IoT_PagingDRX_PDU, + { "NB-IoT-PagingDRX", "ngap.NB_IoT_PagingDRX", + FT_UINT32, BASE_DEC, VALS(ngap_NB_IoT_PagingDRX_vals), 0, + NULL, HFILL }}, + { &hf_ngap_NB_IoT_Paging_eDRXInfo_PDU, + { "NB-IoT-Paging-eDRXInfo", "ngap.NB_IoT_Paging_eDRXInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_NB_IoT_UEPriority_PDU, + { "NB-IoT-UEPriority", "ngap.NB_IoT_UEPriority", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_NetworkInstance_PDU, { "NetworkInstance", "ngap.NetworkInstance", FT_UINT32, BASE_DEC, NULL, 0, @@ -15410,6 +22134,10 @@ void proto_register_ngap(void) { { "NewSecurityContextInd", "ngap.NewSecurityContextInd", FT_UINT32, BASE_DEC, VALS(ngap_NewSecurityContextInd_vals), 0, NULL, HFILL }}, + { &hf_ngap_NotifySourceNGRANNode_PDU, + { "NotifySourceNGRANNode", "ngap.NotifySourceNGRANNode", + FT_UINT32, BASE_DEC, VALS(ngap_NotifySourceNGRANNode_vals), 0, + NULL, HFILL }}, { &hf_ngap_ngap_NGRAN_CGI_PDU, { "NGRAN-CGI", "ngap.NGRAN_CGI", FT_UINT32, BASE_DEC, VALS(ngap_NGRAN_CGI_vals), 0, @@ -15422,6 +22150,26 @@ void proto_register_ngap(void) { { "NGRANTraceID", "ngap.NGRANTraceID", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_NID_PDU, + { "NID", "ngap.NID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_NPN_AccessInformation_PDU, + { "NPN-AccessInformation", "ngap.NPN_AccessInformation", + FT_UINT32, BASE_DEC, VALS(ngap_NPN_AccessInformation_vals), 0, + NULL, HFILL }}, + { &hf_ngap_NPN_MobilityInformation_PDU, + { "NPN-MobilityInformation", "ngap.NPN_MobilityInformation", + FT_UINT32, BASE_DEC, VALS(ngap_NPN_MobilityInformation_vals), 0, + NULL, HFILL }}, + { &hf_ngap_NPN_PagingAssistanceInformation_PDU, + { "NPN-PagingAssistanceInformation", "ngap.NPN_PagingAssistanceInformation", + FT_UINT32, BASE_DEC, VALS(ngap_NPN_PagingAssistanceInformation_vals), 0, + NULL, HFILL }}, + { &hf_ngap_NPN_Support_PDU, + { "NPN-Support", "ngap.NPN_Support", + FT_UINT32, BASE_DEC, VALS(ngap_NPN_Support_vals), 0, + NULL, HFILL }}, { &hf_ngap_NR_CGI_PDU, { "NR-CGI", "ngap.NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15434,6 +22182,14 @@ void proto_register_ngap(void) { { "NumberOfBroadcastsRequested", "ngap.NumberOfBroadcastsRequested", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_NRV2XServicesAuthorized_PDU, + { "NRV2XServicesAuthorized", "ngap.NRV2XServicesAuthorized_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_NRUESidelinkAggregateMaximumBitrate_PDU, + { "NRUESidelinkAggregateMaximumBitrate", "ngap.NRUESidelinkAggregateMaximumBitrate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_OverloadResponse_PDU, { "OverloadResponse", "ngap.OverloadResponse", FT_UINT32, BASE_DEC, VALS(ngap_OverloadResponse_vals), 0, @@ -15442,6 +22198,10 @@ void proto_register_ngap(void) { { "OverloadStartNSSAIList", "ngap.OverloadStartNSSAIList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PagingAssisDataforCEcapabUE_PDU, + { "PagingAssisDataforCEcapabUE", "ngap.PagingAssisDataforCEcapabUE_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PagingDRX_PDU, { "PagingDRX", "ngap.PagingDRX", FT_UINT32, BASE_DEC, VALS(ngap_PagingDRX_vals), 0, @@ -15454,6 +22214,10 @@ void proto_register_ngap(void) { { "PagingPriority", "ngap.PagingPriority", FT_UINT32, BASE_DEC, VALS(ngap_PagingPriority_vals), 0, NULL, HFILL }}, + { &hf_ngap_PagingeDRXInformation_PDU, + { "PagingeDRXInformation", "ngap.PagingeDRXInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PathSwitchRequestAcknowledgeTransfer_PDU, { "PathSwitchRequestAcknowledgeTransfer", "ngap.PathSwitchRequestAcknowledgeTransfer_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15470,6 +22234,14 @@ void proto_register_ngap(void) { { "PathSwitchRequestUnsuccessfulTransfer", "ngap.PathSwitchRequestUnsuccessfulTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PC5QoSParameters_PDU, + { "PC5QoSParameters", "ngap.PC5QoSParameters_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_PrivacyIndicator_PDU, + { "PrivacyIndicator", "ngap.PrivacyIndicator", + FT_UINT32, BASE_DEC, VALS(ngap_PrivacyIndicator_vals), 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionAggregateMaximumBitRate_PDU, { "PDUSessionAggregateMaximumBitRate", "ngap.PDUSessionAggregateMaximumBitRate_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15486,6 +22258,14 @@ void proto_register_ngap(void) { { "PDUSessionResourceFailedToModifyListModRes", "ngap.PDUSessionResourceFailedToModifyListModRes", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceFailedToResumeListRESReq_PDU, + { "PDUSessionResourceFailedToResumeListRESReq", "ngap.PDUSessionResourceFailedToResumeListRESReq", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceFailedToResumeListRESRes_PDU, + { "PDUSessionResourceFailedToResumeListRESRes", "ngap.PDUSessionResourceFailedToResumeListRESRes", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceFailedToSetupListCxtFail_PDU, { "PDUSessionResourceFailedToSetupListCxtFail", "ngap.PDUSessionResourceFailedToSetupListCxtFail", FT_UINT32, BASE_DEC, NULL, 0, @@ -15598,6 +22378,14 @@ void proto_register_ngap(void) { { "PDUSessionResourceReleaseResponseTransfer", "ngap.PDUSessionResourceReleaseResponseTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceResumeListRESReq_PDU, + { "PDUSessionResourceResumeListRESReq", "ngap.PDUSessionResourceResumeListRESReq", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceResumeListRESRes_PDU, + { "PDUSessionResourceResumeListRESRes", "ngap.PDUSessionResourceResumeListRESRes", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceSecondaryRATUsageList_PDU, { "PDUSessionResourceSecondaryRATUsageList", "ngap.PDUSessionResourceSecondaryRATUsageList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15634,6 +22422,10 @@ void proto_register_ngap(void) { { "PDUSessionResourceSetupUnsuccessfulTransfer", "ngap.PDUSessionResourceSetupUnsuccessfulTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceSuspendListSUSReq_PDU, + { "PDUSessionResourceSuspendListSUSReq", "ngap.PDUSessionResourceSuspendListSUSReq", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceSwitchedList_PDU, { "PDUSessionResourceSwitchedList", "ngap.PDUSessionResourceSwitchedList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15670,10 +22462,18 @@ void proto_register_ngap(void) { { "QosFlowAddOrModifyRequestList", "ngap.QosFlowAddOrModifyRequestList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_QosMonitoringRequest_PDU, + { "QosMonitoringRequest", "ngap.QosMonitoringRequest", + FT_UINT32, BASE_DEC, VALS(ngap_QosMonitoringRequest_vals), 0, + NULL, HFILL }}, { &hf_ngap_QosFlowListWithCause_PDU, { "QosFlowListWithCause", "ngap.QosFlowListWithCause", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_QosFlowPerTNLInformation_PDU, + { "QosFlowPerTNLInformation", "ngap.QosFlowPerTNLInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_QosFlowPerTNLInformationList_PDU, { "QosFlowPerTNLInformationList", "ngap.QosFlowPerTNLInformationList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15698,10 +22498,22 @@ void proto_register_ngap(void) { { "RAN-UE-NGAP-ID", "ngap.RAN_UE_NGAP_ID", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_RAT_Information_PDU, + { "RAT-Information", "ngap.RAT_Information", + FT_UINT32, BASE_DEC, VALS(ngap_RAT_Information_vals), 0, + NULL, HFILL }}, { &hf_ngap_RedirectionVoiceFallback_PDU, { "RedirectionVoiceFallback", "ngap.RedirectionVoiceFallback", FT_UINT32, BASE_DEC, VALS(ngap_RedirectionVoiceFallback_vals), 0, NULL, HFILL }}, + { &hf_ngap_RedundantPDUSessionInformation_PDU, + { "RedundantPDUSessionInformation", "ngap.RedundantPDUSessionInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_RedundantQosFlowIndicator_PDU, + { "RedundantQosFlowIndicator", "ngap.RedundantQosFlowIndicator", + FT_UINT32, BASE_DEC, VALS(ngap_RedundantQosFlowIndicator_vals), 0, + NULL, HFILL }}, { &hf_ngap_RelativeAMFCapacity_PDU, { "RelativeAMFCapacity", "ngap.RelativeAMFCapacity", FT_UINT32, BASE_DEC, NULL, 0, @@ -15714,6 +22526,10 @@ void proto_register_ngap(void) { { "ResetType", "ngap.ResetType", FT_UINT32, BASE_DEC, VALS(ngap_ResetType_vals), 0, NULL, HFILL }}, + { &hf_ngap_RGLevelWirelineAccessCharacteristics_PDU, + { "RGLevelWirelineAccessCharacteristics", "ngap.RGLevelWirelineAccessCharacteristics", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_RoutingID_PDU, { "RoutingID", "ngap.RoutingID", FT_BYTES, BASE_NONE, NULL, 0, @@ -15730,6 +22546,10 @@ void proto_register_ngap(void) { { "RRCState", "ngap.RRCState", FT_UINT32, BASE_DEC, VALS(ngap_RRCState_vals), 0, NULL, HFILL }}, + { &hf_ngap_RIMInformationTransfer_PDU, + { "RIMInformationTransfer", "ngap.RIMInformationTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_SCTP_TLAs_PDU, { "SCTP-TLAs", "ngap.SCTP_TLAs", FT_UINT32, BASE_DEC, NULL, 0, @@ -15762,6 +22582,10 @@ void proto_register_ngap(void) { { "ServedGUAMIList", "ngap.ServedGUAMIList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_SgNB_UE_X2AP_ID_PDU, + { "SgNB-UE-X2AP-ID", "ngap.SgNB_UE_X2AP_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_SliceSupportList_PDU, { "SliceSupportList", "ngap.SliceSupportList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15770,10 +22594,14 @@ void proto_register_ngap(void) { { "S-NSSAI", "ngap.S_NSSAI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ngap_SONConfigurationTransfer_PDU, + { &hf_ngap_ngap_SONConfigurationTransfer_PDU, { "SONConfigurationTransfer", "ngap.SONConfigurationTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_SONInformationReport_PDU, + { "SONInformationReport", "ngap.SONInformationReport", + FT_UINT32, BASE_DEC, VALS(ngap_SONInformationReport_vals), 0, + NULL, HFILL }}, { &hf_ngap_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_PDU, { "SourceNGRANNode-ToTargetNGRANNode-TransparentContainer", "ngap.SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15786,10 +22614,26 @@ void proto_register_ngap(void) { { "SourceToTarget-AMFInformationReroute", "ngap.SourceToTarget_AMFInformationReroute_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_SRVCCOperationPossible_PDU, + { "SRVCCOperationPossible", "ngap.SRVCCOperationPossible", + FT_UINT32, BASE_DEC, VALS(ngap_SRVCCOperationPossible_vals), 0, + NULL, HFILL }}, { &hf_ngap_SupportedTAList_PDU, { "SupportedTAList", "ngap.SupportedTAList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_Suspend_Request_Indication_PDU, + { "Suspend-Request-Indication", "ngap.Suspend_Request_Indication", + FT_UINT32, BASE_DEC, VALS(ngap_Suspend_Request_Indication_vals), 0, + NULL, HFILL }}, + { &hf_ngap_Suspend_Response_Indication_PDU, + { "Suspend-Response-Indication", "ngap.Suspend_Response_Indication", + FT_UINT32, BASE_DEC, VALS(ngap_Suspend_Response_Indication_vals), 0, + NULL, HFILL }}, + { &hf_ngap_TAI_PDU, + { "TAI", "ngap.TAI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_TAIListForPaging_PDU, { "TAIListForPaging", "ngap.TAIListForPaging", FT_UINT32, BASE_DEC, NULL, 0, @@ -15806,10 +22650,22 @@ void proto_register_ngap(void) { { "TargetNGRANNode-ToSourceNGRANNode-TransparentContainer", "ngap.TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU, + { "TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer", "ngap.TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_TargetRNC_ID_PDU, + { "TargetRNC-ID", "ngap.TargetRNC_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_TargetToSource_TransparentContainer_PDU, { "TargetToSource-TransparentContainer", "ngap.TargetToSource_TransparentContainer", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_TargettoSource_Failure_TransparentContainer_PDU, + { "TargettoSource-Failure-TransparentContainer", "ngap.TargettoSource_Failure_TransparentContainer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_TimeToWait_PDU, { "TimeToWait", "ngap.TimeToWait", FT_UINT32, BASE_DEC, VALS(ngap_TimeToWait_vals), 0, @@ -15830,6 +22686,10 @@ void proto_register_ngap(void) { { "TransportLayerAddress", "ngap.TransportLayerAddress", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_TSCTrafficCharacteristics_PDU, + { "TSCTrafficCharacteristics", "ngap.TSCTrafficCharacteristics_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UEAggregateMaximumBitRate_PDU, { "UEAggregateMaximumBitRate", "ngap.UEAggregateMaximumBitRate_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15838,10 +22698,22 @@ void proto_register_ngap(void) { { "UE-associatedLogicalNG-connectionList", "ngap.UE_associatedLogicalNG_connectionList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UECapabilityInfoRequest_PDU, + { "UECapabilityInfoRequest", "ngap.UECapabilityInfoRequest", + FT_UINT32, BASE_DEC, VALS(ngap_UECapabilityInfoRequest_vals), 0, + NULL, HFILL }}, { &hf_ngap_UEContextRequest_PDU, { "UEContextRequest", "ngap.UEContextRequest", FT_UINT32, BASE_DEC, VALS(ngap_UEContextRequest_vals), 0, NULL, HFILL }}, + { &hf_ngap_UE_DifferentiationInfo_PDU, + { "UE-DifferentiationInfo", "ngap.UE_DifferentiationInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEHistoryInformationFromTheUE_PDU, + { "UEHistoryInformationFromTheUE", "ngap.UEHistoryInformationFromTheUE", + FT_UINT32, BASE_DEC, VALS(ngap_UEHistoryInformationFromTheUE_vals), 0, + NULL, HFILL }}, { &hf_ngap_UE_NGAP_IDs_PDU, { "UE-NGAP-IDs", "ngap.UE_NGAP_IDs", FT_UINT32, BASE_DEC, VALS(ngap_UE_NGAP_IDs_vals), 0, @@ -15862,6 +22734,14 @@ void proto_register_ngap(void) { { "UERadioCapabilityForPaging", "ngap.UERadioCapabilityForPaging_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UERadioCapabilityForPagingOfNB_IoT_PDU, + { "UERadioCapabilityForPagingOfNB-IoT", "ngap.UERadioCapabilityForPagingOfNB_IoT", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UERadioCapabilityID_PDU, + { "UERadioCapabilityID", "ngap.UERadioCapabilityID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UERetentionInformation_PDU, { "UERetentionInformation", "ngap.UERetentionInformation", FT_UINT32, BASE_DEC, VALS(ngap_UERetentionInformation_vals), 0, @@ -15870,6 +22750,14 @@ void proto_register_ngap(void) { { "UESecurityCapabilities", "ngap.UESecurityCapabilities_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UE_UP_CIoT_Support_PDU, + { "UE-UP-CIoT-Support", "ngap.UE_UP_CIoT_Support", + FT_UINT32, BASE_DEC, VALS(ngap_UE_UP_CIoT_Support_vals), 0, + NULL, HFILL }}, + { &hf_ngap_UL_CP_SecurityInformation_PDU, + { "UL-CP-SecurityInformation", "ngap.UL_CP_SecurityInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UL_NGU_UP_TNLModifyList_PDU, { "UL-NGU-UP-TNLModifyList", "ngap.UL_NGU_UP_TNLModifyList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15894,10 +22782,26 @@ void proto_register_ngap(void) { { "UPTransportLayerInformationPairList", "ngap.UPTransportLayerInformationPairList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_URI_address_PDU, + { "URI-address", "ngap.URI_address", + FT_STRING, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UserLocationInformation_PDU, { "UserLocationInformation", "ngap.UserLocationInformation", FT_UINT32, BASE_DEC, VALS(ngap_UserLocationInformation_vals), 0, NULL, HFILL }}, + { &hf_ngap_UserLocationInformationTNGF_PDU, + { "UserLocationInformationTNGF", "ngap.UserLocationInformationTNGF_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UserLocationInformationTWIF_PDU, + { "UserLocationInformationTWIF", "ngap.UserLocationInformationTWIF_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UserLocationInformationW_AGF_PDU, + { "UserLocationInformationW-AGF", "ngap.UserLocationInformationW_AGF", + FT_UINT32, BASE_DEC, VALS(ngap_UserLocationInformationW_AGF_vals), 0, + NULL, HFILL }}, { &hf_ngap_WarningAreaCoordinates_PDU, { "WarningAreaCoordinates", "ngap.WarningAreaCoordinates", FT_BYTES, BASE_NONE, NULL, 0, @@ -15918,6 +22822,10 @@ void proto_register_ngap(void) { { "WarningType", "ngap.WarningType", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_WUS_Assistance_Information_PDU, + { "WUS-Assistance-Information", "ngap.WUS_Assistance_Information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceSetupRequest_PDU, { "PDUSessionResourceSetupRequest", "ngap.PDUSessionResourceSetupRequest_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15978,6 +22886,30 @@ void proto_register_ngap(void) { { "UEContextReleaseComplete", "ngap.UEContextReleaseComplete_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UEContextResumeRequest_PDU, + { "UEContextResumeRequest", "ngap.UEContextResumeRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextResumeResponse_PDU, + { "UEContextResumeResponse", "ngap.UEContextResumeResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextResumeFailure_PDU, + { "UEContextResumeFailure", "ngap.UEContextResumeFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextSuspendRequest_PDU, + { "UEContextSuspendRequest", "ngap.UEContextSuspendRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextSuspendResponse_PDU, + { "UEContextSuspendResponse", "ngap.UEContextSuspendResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextSuspendFailure_PDU, + { "UEContextSuspendFailure", "ngap.UEContextSuspendFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UEContextModificationRequest_PDU, { "UEContextModificationRequest", "ngap.UEContextModificationRequest_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15994,6 +22926,18 @@ void proto_register_ngap(void) { { "RRCInactiveTransitionReport", "ngap.RRCInactiveTransitionReport_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_RetrieveUEInformation_PDU, + { "RetrieveUEInformation", "ngap.RetrieveUEInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEInformationTransfer_PDU, + { "UEInformationTransfer", "ngap.UEInformationTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_RANCPRelocationIndication_PDU, + { "RANCPRelocationIndication", "ngap.RANCPRelocationIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_HandoverRequired_PDU, { "HandoverRequired", "ngap.HandoverRequired_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16042,6 +22986,18 @@ void proto_register_ngap(void) { { "HandoverCancelAcknowledge", "ngap.HandoverCancelAcknowledge_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_HandoverSuccess_PDU, + { "HandoverSuccess", "ngap.HandoverSuccess_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UplinkRANEarlyStatusTransfer_PDU, + { "UplinkRANEarlyStatusTransfer", "ngap.UplinkRANEarlyStatusTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DownlinkRANEarlyStatusTransfer_PDU, + { "DownlinkRANEarlyStatusTransfer", "ngap.DownlinkRANEarlyStatusTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UplinkRANStatusTransfer_PDU, { "UplinkRANStatusTransfer", "ngap.UplinkRANStatusTransfer_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16066,6 +23022,18 @@ void proto_register_ngap(void) { { "UplinkNASTransport", "ngap.UplinkNASTransport_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_W_AGFIdentityInformation_PDU, + { "W-AGFIdentityInformation", "ngap.W_AGFIdentityInformation", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_TNGFIdentityInformation_PDU, + { "TNGFIdentityInformation", "ngap.TNGFIdentityInformation", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_TWIFIdentityInformation_PDU, + { "TWIFIdentityInformation", "ngap.TWIFIdentityInformation", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_NASNonDeliveryIndication_PDU, { "NASNonDeliveryIndication", "ngap.NASNonDeliveryIndication_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16238,6 +23206,30 @@ void proto_register_ngap(void) { { "SecondaryRATDataUsageReport", "ngap.SecondaryRATDataUsageReport_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UplinkRIMInformationTransfer_PDU, + { "UplinkRIMInformationTransfer", "ngap.UplinkRIMInformationTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_DownlinkRIMInformationTransfer_PDU, + { "DownlinkRIMInformationTransfer", "ngap.DownlinkRIMInformationTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_ConnectionEstablishmentIndication_PDU, + { "ConnectionEstablishmentIndication", "ngap.ConnectionEstablishmentIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UERadioCapabilityIDMappingRequest_PDU, + { "UERadioCapabilityIDMappingRequest", "ngap.UERadioCapabilityIDMappingRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UERadioCapabilityIDMappingResponse_PDU, + { "UERadioCapabilityIDMappingResponse", "ngap.UERadioCapabilityIDMappingResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_AMFCPRelocationIndication_PDU, + { "AMFCPRelocationIndication", "ngap.AMFCPRelocationIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_NGAP_PDU_PDU, { "NGAP-PDU", "ngap.NGAP_PDU", FT_UINT32, BASE_DEC, VALS(ngap_NGAP_PDU_vals), 0, @@ -16246,10 +23238,22 @@ void proto_register_ngap(void) { { "PDUSessionResourceModifyIndicationUnsuccessfulTransfer", "ngap.PDUSessionResourceModifyIndicationUnsuccessfulTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UEContextResumeRequestTransfer_PDU, + { "UEContextResumeRequestTransfer", "ngap.UEContextResumeRequestTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_UEContextResumeResponseTransfer_PDU, + { "UEContextResumeResponseTransfer", "ngap.UEContextResumeResponseTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_SecondaryRATDataUsageReportTransfer_PDU, { "SecondaryRATDataUsageReportTransfer", "ngap.SecondaryRATDataUsageReportTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_UEContextSuspendRequestTransfer_PDU, + { "UEContextSuspendRequestTransfer", "ngap.UEContextSuspendRequestTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_local, { "local", "ngap.local", FT_UINT32, BASE_DEC, NULL, 0, @@ -16330,6 +23334,10 @@ void proto_register_ngap(void) { { "pre-emptionVulnerability", "ngap.pre_emptionVulnerability", FT_UINT32, BASE_DEC, VALS(ngap_Pre_emptionVulnerability_vals), 0, NULL, HFILL }}, + { &hf_ngap_Allowed_CAG_List_per_PLMN_item, + { "CAG-ID", "ngap.CAG_ID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_AllowedNSSAI_item, { "AllowedNSSAI-Item", "ngap.AllowedNSSAI_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16338,10 +23346,50 @@ void proto_register_ngap(void) { { "s-NSSAI", "ngap.s_NSSAI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_Allowed_PNI_NPN_List_item, + { "Allowed-PNI-NPN-Item", "ngap.Allowed_PNI_NPN_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pLMNIdentity, + { "pLMNIdentity", "ngap.pLMNIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pNI_NPN_restricted, + { "pNI-NPN-restricted", "ngap.pNI_NPN_restricted", + FT_UINT32, BASE_DEC, VALS(ngap_T_pNI_NPN_restricted_vals), 0, + NULL, HFILL }}, + { &hf_ngap_allowed_CAG_List_per_PLMN, + { "allowed-CAG-List-per-PLMN", "ngap.allowed_CAG_List_per_PLMN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_AllowedTACs_item, { "TAC", "ngap.TAC", FT_UINT24, BASE_DEC_HEX, NULL, 0, NULL, HFILL }}, + { &hf_ngap_AlternativeQoSParaSetList_item, + { "AlternativeQoSParaSetItem", "ngap.AlternativeQoSParaSetItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_alternativeQoSParaSetIndex, + { "alternativeQoSParaSetIndex", "ngap.alternativeQoSParaSetIndex", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_guaranteedFlowBitRateDL, + { "guaranteedFlowBitRateDL", "ngap.guaranteedFlowBitRateDL", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_ngap_guaranteedFlowBitRateUL, + { "guaranteedFlowBitRateUL", "ngap.guaranteedFlowBitRateUL", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_ngap_packetDelayBudget, + { "packetDelayBudget", "ngap.packetDelayBudget", + FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_PacketDelayBudget_fmt), 0, + NULL, HFILL }}, + { &hf_ngap_packetErrorRate, + { "packetErrorRate", "ngap.packetErrorRate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_globalRANNodeID, { "globalRANNodeID", "ngap.globalRANNodeID", FT_UINT32, BASE_DEC, VALS(ngap_GlobalRANNodeID_vals), 0, @@ -16446,6 +23494,38 @@ void proto_register_ngap(void) { { "qosFlowMappingIndication", "ngap.qosFlowMappingIndication", FT_UINT32, BASE_DEC, VALS(ngap_T_qosFlowMappingIndication_vals), 0, NULL, HFILL }}, + { &hf_ngap_cellBased, + { "cellBased", "ngap.cellBased_element", + FT_NONE, BASE_NONE, NULL, 0, + "CellBasedMDT_NR", HFILL }}, + { &hf_ngap_tABased, + { "tABased", "ngap.tABased_element", + FT_NONE, BASE_NONE, NULL, 0, + "TABasedMDT", HFILL }}, + { &hf_ngap_pLMNWide, + { "pLMNWide", "ngap.pLMNWide_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tAIBased, + { "tAIBased", "ngap.tAIBased_element", + FT_NONE, BASE_NONE, NULL, 0, + "TAIBasedMDT", HFILL }}, + { &hf_ngap_cellBased_01, + { "cellBased", "ngap.cellBased_element", + FT_NONE, BASE_NONE, NULL, 0, + "CellBasedMDT_EUTRA", HFILL }}, + { &hf_ngap_AreaScopeOfNeighCellsList_item, + { "AreaScopeOfNeighCellsItem", "ngap.AreaScopeOfNeighCellsItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_nrFrequencyInfo, + { "nrFrequencyInfo", "ngap.nrFrequencyInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pciListForMDT, + { "pciListForMDT", "ngap.pciListForMDT", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_cellIDCancelledEUTRA, { "cellIDCancelledEUTRA", "ngap.cellIDCancelledEUTRA", FT_UINT32, BASE_DEC, NULL, 0, @@ -16498,14 +23578,26 @@ void proto_register_ngap(void) { { "BroadcastPLMNItem", "ngap.BroadcastPLMNItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ngap_pLMNIdentity, - { "pLMNIdentity", "ngap.pLMNIdentity", - FT_BYTES, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_ngap_tAISliceSupportList, { "tAISliceSupportList", "ngap.tAISliceSupportList", FT_UINT32, BASE_DEC, NULL, 0, "SliceSupportList", HFILL }}, + { &hf_ngap_bluetoothMeasConfig, + { "bluetoothMeasConfig", "ngap.bluetoothMeasConfig", + FT_UINT32, BASE_DEC, VALS(ngap_BluetoothMeasConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_bluetoothMeasConfigNameList, + { "bluetoothMeasConfigNameList", "ngap.bluetoothMeasConfigNameList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_bt_rssi, + { "bt-rssi", "ngap.bt_rssi", + FT_UINT32, BASE_DEC, VALS(ngap_T_bt_rssi_vals), 0, + "T_bt_rssi", HFILL }}, + { &hf_ngap_BluetoothMeasConfigNameList_item, + { "BluetoothName", "ngap.BluetoothName", + FT_STRING, STR_UNICODE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_CancelledCellsInEAI_EUTRA_item, { "CancelledCellsInEAI-EUTRA-Item", "ngap.CancelledCellsInEAI_EUTRA_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16534,6 +23626,30 @@ void proto_register_ngap(void) { { "CancelledCellsInTAI-NR-Item", "ngap.CancelledCellsInTAI_NR_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_CandidateCellList_item, + { "CandidateCell-Item", "ngap.CandidateCell_Item", + FT_UINT32, BASE_DEC, VALS(ngap_CandidateCell_Item_vals), 0, + NULL, HFILL }}, + { &hf_ngap_candidateCGI, + { "candidateCGI", "ngap.candidateCGI_element", + FT_NONE, BASE_NONE, NULL, 0, + "CandidateCellID", HFILL }}, + { &hf_ngap_candidatePCI, + { "candidatePCI", "ngap.candidatePCI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_candidateCellID, + { "candidateCellID", "ngap.candidateCellID_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_CGI", HFILL }}, + { &hf_ngap_candidatePCI_01, + { "candidatePCI", "ngap.candidatePCI", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1007", HFILL }}, + { &hf_ngap_candidateNRARFCN, + { "candidateNRARFCN", "ngap.candidateNRARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3279165", HFILL }}, { &hf_ngap_radioNetwork, { "radioNetwork", "ngap.radioNetwork", FT_UINT32, BASE_DEC|BASE_EXT_STRING, &ngap_CauseRadioNetwork_vals_ext, 0, @@ -16554,6 +23670,14 @@ void proto_register_ngap(void) { { "misc", "ngap.misc", FT_UINT32, BASE_DEC, VALS(ngap_CauseMisc_vals), 0, "CauseMisc", HFILL }}, + { &hf_ngap_cellCAGList, + { "cellCAGList", "ngap.cellCAGList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_CellCAGList_item, + { "CAG-ID", "ngap.CAG_ID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_CellIDBroadcastEUTRA_item, { "CellIDBroadcastEUTRA-Item", "ngap.CellIDBroadcastEUTRA_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16686,6 +23810,22 @@ void proto_register_ngap(void) { { "typeOfError", "ngap.typeOfError", FT_UINT32, BASE_DEC, VALS(ngap_TypeOfError_vals), 0, NULL, HFILL }}, + { &hf_ngap_cellIdListforMDT, + { "cellIdListforMDT", "ngap.cellIdListforMDT", + FT_UINT32, BASE_DEC, NULL, 0, + "CellIdListforMDT_NR", HFILL }}, + { &hf_ngap_CellIdListforMDT_NR_item, + { "NR-CGI", "ngap.NR_CGI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_cellIdListforMDT_01, + { "cellIdListforMDT", "ngap.cellIdListforMDT", + FT_UINT32, BASE_DEC, NULL, 0, + "CellIdListforMDT_EUTRA", HFILL }}, + { &hf_ngap_CellIdListforMDT_EUTRA_item, + { "EUTRA-CGI", "ngap.EUTRA_CGI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_DataForwardingResponseDRBList_item, { "DataForwardingResponseDRBItem", "ngap.DataForwardingResponseDRBItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16702,6 +23842,38 @@ void proto_register_ngap(void) { { "uLForwardingUP-TNLInformation", "ngap.uLForwardingUP_TNLInformation", FT_UINT32, BASE_DEC, VALS(ngap_UPTransportLayerInformation_vals), 0, "UPTransportLayerInformation", HFILL }}, + { &hf_ngap_dAPSIndicator, + { "dAPSIndicator", "ngap.dAPSIndicator", + FT_UINT32, BASE_DEC, VALS(ngap_T_dAPSIndicator_vals), 0, + NULL, HFILL }}, + { &hf_ngap_DAPSResponseInfoList_item, + { "DAPSResponseInfoItem", "ngap.DAPSResponseInfoItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_dAPSResponseInfo, + { "dAPSResponseInfo", "ngap.dAPSResponseInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_iE_Extension, + { "iE-Extension", "ngap.iE_Extension", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolExtensionContainer", HFILL }}, + { &hf_ngap_dapsresponseindicator, + { "dapsresponseindicator", "ngap.dapsresponseindicator", + FT_UINT32, BASE_DEC, VALS(ngap_T_dapsresponseindicator_vals), 0, + NULL, HFILL }}, + { &hf_ngap_DataForwardingResponseERABList_item, + { "DataForwardingResponseERABListItem", "ngap.DataForwardingResponseERABListItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_e_RAB_ID, + { "e-RAB-ID", "ngap.e_RAB_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_dl_NAS_MAC, + { "dl-NAS-MAC", "ngap.dl_NAS_MAC", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_DRBsSubjectToStatusTransferList_item, { "DRBsSubjectToStatusTransferItem", "ngap.DRBsSubjectToStatusTransferItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16714,10 +23886,6 @@ void proto_register_ngap(void) { { "dRBStatusDL", "ngap.dRBStatusDL", FT_UINT32, BASE_DEC, VALS(ngap_DRBStatusDL_vals), 0, NULL, HFILL }}, - { &hf_ngap_iE_Extension, - { "iE-Extension", "ngap.iE_Extension", - FT_UINT32, BASE_DEC, NULL, 0, - "ProtocolExtensionContainer", HFILL }}, { &hf_ngap_dRBStatusDL12, { "dRBStatusDL12", "ngap.dRBStatusDL12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16770,14 +23938,6 @@ void proto_register_ngap(void) { { "priorityLevelQos", "ngap.priorityLevelQos", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_ngap_packetDelayBudget, - { "packetDelayBudget", "ngap.packetDelayBudget", - FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_PacketDelayBudget_fmt), 0, - NULL, HFILL }}, - { &hf_ngap_packetErrorRate, - { "packetErrorRate", "ngap.packetErrorRate_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_ngap_fiveQI, { "fiveQI", "ngap.fiveQI", FT_UINT32, BASE_DEC, NULL, 0, @@ -16794,6 +23954,26 @@ void proto_register_ngap(void) { { "maximumDataBurstVolume", "ngap.maximumDataBurstVolume", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_byte_bytes, 0, NULL, HFILL }}, + { &hf_ngap_procedureStage, + { "procedureStage", "ngap.procedureStage", + FT_UINT32, BASE_DEC, VALS(ngap_ProcedureStageChoice_vals), 0, + "ProcedureStageChoice", HFILL }}, + { &hf_ngap_first_dl_count, + { "first-dl-count", "ngap.first_dl_count_element", + FT_NONE, BASE_NONE, NULL, 0, + "FirstDLCount", HFILL }}, + { &hf_ngap_dRBsSubjectToEarlyStatusTransfer, + { "dRBsSubjectToEarlyStatusTransfer", "ngap.dRBsSubjectToEarlyStatusTransfer", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsSubjectToEarlyStatusTransfer_List", HFILL }}, + { &hf_ngap_DRBsSubjectToEarlyStatusTransfer_List_item, + { "DRBsSubjectToEarlyStatusTransfer-Item", "ngap.DRBsSubjectToEarlyStatusTransfer_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_firstDLCOUNT, + { "firstDLCOUNT", "ngap.firstDLCOUNT", + FT_UINT32, BASE_DEC, VALS(ngap_DRBStatusDL_vals), 0, + "DRBStatusDL", HFILL }}, { &hf_ngap_EmergencyAreaIDBroadcastEUTRA_item, { "EmergencyAreaIDBroadcastEUTRA-Item", "ngap.EmergencyAreaIDBroadcastEUTRA_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16846,6 +24026,22 @@ void proto_register_ngap(void) { { "emergencyServiceTargetCN", "ngap.emergencyServiceTargetCN", FT_UINT32, BASE_DEC, VALS(ngap_EmergencyServiceTargetCN_vals), 0, NULL, HFILL }}, + { &hf_ngap_macroENB_ID, + { "macroENB-ID", "ngap.macroENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_20", HFILL }}, + { &hf_ngap_homeENB_ID, + { "homeENB-ID", "ngap.homeENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_28", HFILL }}, + { &hf_ngap_short_macroENB_ID, + { "short-macroENB-ID", "ngap.short_macroENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_ngap_long_macroENB_ID, + { "long-macroENB-ID", "ngap.long_macroENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_21", HFILL }}, { &hf_ngap_portNumber, { "portNumber", "ngap.portNumber", FT_UINT16, BASE_DEC, NULL, 0, @@ -16862,10 +24058,6 @@ void proto_register_ngap(void) { { "E-RABInformationItem", "ngap.E_RABInformationItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ngap_e_RAB_ID, - { "e-RAB-ID", "ngap.e_RAB_ID", - FT_UINT32, BASE_DEC, NULL, 0, - NULL, HFILL }}, { &hf_ngap_dLForwarding, { "dLForwarding", "ngap.dLForwarding", FT_UINT32, BASE_DEC, VALS(ngap_DLForwarding_vals), 0, @@ -16918,6 +24110,50 @@ void proto_register_ngap(void) { { "timeStayedInCell", "ngap.timeStayedInCell", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, "INTEGER_0_4095", HFILL }}, + { &hf_ngap_primaryRATRestriction, + { "primaryRATRestriction", "ngap.primaryRATRestriction", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_secondaryRATRestriction, + { "secondaryRATRestriction", "ngap.secondaryRATRestriction", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_ExtendedSliceSupportList_item, + { "SliceSupportItem", "ngap.SliceSupportItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_outOfCoverage, + { "outOfCoverage", "ngap.outOfCoverage", + FT_UINT32, BASE_DEC, VALS(ngap_T_outOfCoverage_vals), 0, + NULL, HFILL }}, + { &hf_ngap_eventL1LoggedMDTConfig, + { "eventL1LoggedMDTConfig", "ngap.eventL1LoggedMDTConfig_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_l1Threshold, + { "l1Threshold", "ngap.l1Threshold", + FT_UINT32, BASE_DEC, VALS(ngap_MeasurementThresholdL1LoggedMDT_vals), 0, + "MeasurementThresholdL1LoggedMDT", HFILL }}, + { &hf_ngap_hysteresis, + { "hysteresis", "ngap.hysteresis", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_timeToTrigger, + { "timeToTrigger", "ngap.timeToTrigger", + FT_UINT32, BASE_DEC, VALS(ngap_TimeToTrigger_vals), 0, + NULL, HFILL }}, + { &hf_ngap_threshold_RSRP, + { "threshold-RSRP", "ngap.threshold_RSRP", + FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_Threshold_RSRP_fmt), 0, + NULL, HFILL }}, + { &hf_ngap_threshold_RSRQ, + { "threshold-RSRQ", "ngap.threshold_RSRQ", + FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_Threshold_RSRQ_fmt), 0, + NULL, HFILL }}, + { &hf_ngap_uERLFReportContainer, + { "uERLFReportContainer", "ngap.uERLFReportContainer", + FT_UINT32, BASE_DEC, VALS(ngap_UERLFReportContainer_vals), 0, + NULL, HFILL }}, { &hf_ngap_aMFSetID, { "aMFSetID", "ngap.aMFSetID", FT_BYTES, BASE_NONE, NULL, 0, @@ -16942,6 +24178,22 @@ void proto_register_ngap(void) { { "TAC", "ngap.TAC", FT_UINT24, BASE_DEC_HEX, NULL, 0, NULL, HFILL }}, + { &hf_ngap_sourceeNBID, + { "sourceeNBID", "ngap.sourceeNBID_element", + FT_NONE, BASE_NONE, NULL, 0, + "IntersystemSONeNBID", HFILL }}, + { &hf_ngap_targetNGRANnodeID, + { "targetNGRANnodeID", "ngap.targetNGRANnodeID_element", + FT_NONE, BASE_NONE, NULL, 0, + "IntersystemSONNGRANnodeID", HFILL }}, + { &hf_ngap_sourceNGRANnodeID, + { "sourceNGRANnodeID", "ngap.sourceNGRANnodeID_element", + FT_NONE, BASE_NONE, NULL, 0, + "IntersystemSONNGRANnodeID", HFILL }}, + { &hf_ngap_targeteNBID, + { "targeteNBID", "ngap.targeteNBID_element", + FT_NONE, BASE_NONE, NULL, 0, + "IntersystemSONeNBID", HFILL }}, { &hf_ngap_maximumFlowBitRateDL, { "maximumFlowBitRateDL", "ngap.maximumFlowBitRateDL", FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, @@ -16950,14 +24202,6 @@ void proto_register_ngap(void) { { "maximumFlowBitRateUL", "ngap.maximumFlowBitRateUL", FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, "BitRate", HFILL }}, - { &hf_ngap_guaranteedFlowBitRateDL, - { "guaranteedFlowBitRateDL", "ngap.guaranteedFlowBitRateDL", - FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, - "BitRate", HFILL }}, - { &hf_ngap_guaranteedFlowBitRateUL, - { "guaranteedFlowBitRateUL", "ngap.guaranteedFlowBitRateUL", - FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, - "BitRate", HFILL }}, { &hf_ngap_notificationControl, { "notificationControl", "ngap.notificationControl", FT_UINT32, BASE_DEC, VALS(ngap_NotificationControl_vals), 0, @@ -16970,6 +24214,14 @@ void proto_register_ngap(void) { { "maximumPacketLossRateUL", "ngap.maximumPacketLossRateUL", FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_PacketLossRate_fmt), 0, "PacketLossRate", HFILL }}, + { &hf_ngap_pLMNidentity, + { "pLMNidentity", "ngap.pLMNidentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_eNB_ID, + { "eNB-ID", "ngap.eNB_ID", + FT_UINT32, BASE_DEC, VALS(ngap_ENB_ID_vals), 0, + NULL, HFILL }}, { &hf_ngap_gNB_ID, { "gNB-ID", "ngap.gNB_ID", FT_UINT32, BASE_DEC, VALS(ngap_GNB_ID_vals), 0, @@ -16978,6 +24230,14 @@ void proto_register_ngap(void) { { "n3IWF-ID", "ngap.n3IWF_ID", FT_UINT32, BASE_DEC, VALS(ngap_N3IWF_ID_vals), 0, NULL, HFILL }}, + { &hf_ngap_globalLineIdentity, + { "globalLineIdentity", "ngap.globalLineIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_lineType, + { "lineType", "ngap.lineType", + FT_UINT32, BASE_DEC, VALS(ngap_LineType_vals), 0, + NULL, HFILL }}, { &hf_ngap_ngENB_ID, { "ngENB-ID", "ngap.ngENB_ID", FT_UINT32, BASE_DEC, VALS(ngap_NgENB_ID_vals), 0, @@ -16994,6 +24254,18 @@ void proto_register_ngap(void) { { "globalN3IWF-ID", "ngap.globalN3IWF_ID_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_tNGF_ID, + { "tNGF-ID", "ngap.tNGF_ID", + FT_UINT32, BASE_DEC, VALS(ngap_TNGF_ID_vals), 0, + NULL, HFILL }}, + { &hf_ngap_tWIF_ID, + { "tWIF-ID", "ngap.tWIF_ID", + FT_UINT32, BASE_DEC, VALS(ngap_TWIF_ID_vals), 0, + NULL, HFILL }}, + { &hf_ngap_w_AGF_ID, + { "w-AGF-ID", "ngap.w_AGF_ID", + FT_UINT32, BASE_DEC, VALS(ngap_W_AGF_ID_vals), 0, + NULL, HFILL }}, { &hf_ngap_gNB_ID_01, { "gNB-ID", "ngap.gNB_ID", FT_BYTES, BASE_NONE, NULL, 0, @@ -17046,10 +24318,154 @@ void proto_register_ngap(void) { { "criticalityDiagnostics", "ngap.criticalityDiagnostics_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_handoverReportType, + { "handoverReportType", "ngap.handoverReportType", + FT_UINT32, BASE_DEC, VALS(ngap_T_handoverReportType_vals), 0, + NULL, HFILL }}, + { &hf_ngap_handoverCause, + { "handoverCause", "ngap.handoverCause", + FT_UINT32, BASE_DEC, VALS(ngap_Cause_vals), 0, + "Cause", HFILL }}, + { &hf_ngap_sourcecellCGI, + { "sourcecellCGI", "ngap.sourcecellCGI", + FT_UINT32, BASE_DEC, VALS(ngap_NGRAN_CGI_vals), 0, + "NGRAN_CGI", HFILL }}, + { &hf_ngap_targetcellCGI, + { "targetcellCGI", "ngap.targetcellCGI", + FT_UINT32, BASE_DEC, VALS(ngap_NGRAN_CGI_vals), 0, + "NGRAN_CGI", HFILL }}, + { &hf_ngap_reestablishmentcellCGI, + { "reestablishmentcellCGI", "ngap.reestablishmentcellCGI", + FT_UINT32, BASE_DEC, VALS(ngap_NGRAN_CGI_vals), 0, + "NGRAN_CGI", HFILL }}, + { &hf_ngap_sourcecellC_RNTI, + { "sourcecellC-RNTI", "ngap.sourcecellC_RNTI", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_ngap_targetcellinE_UTRAN, + { "targetcellinE-UTRAN", "ngap.targetcellinE_UTRAN_element", + FT_NONE, BASE_NONE, NULL, 0, + "EUTRA_CGI", HFILL }}, + { &hf_ngap_mobilityInformation, + { "mobilityInformation", "ngap.mobilityInformation", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_recommendRANNodesForPaging, { "recommendRANNodesForPaging", "ngap.recommendRANNodesForPaging_element", FT_NONE, BASE_NONE, NULL, 0, "RecommendedRANNodesForPaging", HFILL }}, + { &hf_ngap_measurementsToActivate, + { "measurementsToActivate", "ngap.measurementsToActivate", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m1Configuration, + { "m1Configuration", "ngap.m1Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m4Configuration, + { "m4Configuration", "ngap.m4Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m5Configuration, + { "m5Configuration", "ngap.m5Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m6Configuration, + { "m6Configuration", "ngap.m6Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m7Configuration, + { "m7Configuration", "ngap.m7Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_bluetoothMeasurementConfiguration, + { "bluetoothMeasurementConfiguration", "ngap.bluetoothMeasurementConfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_wLANMeasurementConfiguration, + { "wLANMeasurementConfiguration", "ngap.wLANMeasurementConfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_mDT_Location_Info, + { "mDT-Location-Info", "ngap.mDT_Location_Info_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_sensorMeasurementConfiguration, + { "sensorMeasurementConfiguration", "ngap.sensorMeasurementConfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_transferType, + { "transferType", "ngap.transferType", + FT_UINT32, BASE_DEC, VALS(ngap_IntersystemSONTransferType_vals), 0, + "IntersystemSONTransferType", HFILL }}, + { &hf_ngap_intersystemSONInformation, + { "intersystemSONInformation", "ngap.intersystemSONInformation", + FT_UINT32, BASE_DEC, VALS(ngap_IntersystemSONInformation_vals), 0, + NULL, HFILL }}, + { &hf_ngap_fromEUTRANtoNGRAN, + { "fromEUTRANtoNGRAN", "ngap.fromEUTRANtoNGRAN_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_fromNGRANtoEUTRAN, + { "fromNGRANtoEUTRAN", "ngap.fromNGRANtoEUTRAN_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_globaleNBID, + { "globaleNBID", "ngap.globaleNBID_element", + FT_NONE, BASE_NONE, NULL, 0, + "GlobalENB_ID", HFILL }}, + { &hf_ngap_selectedEPSTAI, + { "selectedEPSTAI", "ngap.selectedEPSTAI_element", + FT_NONE, BASE_NONE, NULL, 0, + "EPS_TAI", HFILL }}, + { &hf_ngap_selectedTAI, + { "selectedTAI", "ngap.selectedTAI_element", + FT_NONE, BASE_NONE, NULL, 0, + "TAI", HFILL }}, + { &hf_ngap_intersystemSONInformationReport, + { "intersystemSONInformationReport", "ngap.intersystemSONInformationReport", + FT_UINT32, BASE_DEC, VALS(ngap_IntersystemSONInformationReport_vals), 0, + NULL, HFILL }}, + { &hf_ngap_hOReportInformation, + { "hOReportInformation", "ngap.hOReportInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "InterSystemHOReport", HFILL }}, + { &hf_ngap_failureIndicationInformation, + { "failureIndicationInformation", "ngap.failureIndicationInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "InterSystemFailureIndication", HFILL }}, + { &hf_ngap_handoverReportType_01, + { "handoverReportType", "ngap.handoverReportType", + FT_UINT32, BASE_DEC, VALS(ngap_InterSystemHandoverReportType_vals), 0, + "InterSystemHandoverReportType", HFILL }}, + { &hf_ngap_tooearlyIntersystemHO, + { "tooearlyIntersystemHO", "ngap.tooearlyIntersystemHO_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_intersystemUnnecessaryHO, + { "intersystemUnnecessaryHO", "ngap.intersystemUnnecessaryHO_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_sourcecellID, + { "sourcecellID", "ngap.sourcecellID_element", + FT_NONE, BASE_NONE, NULL, 0, + "EUTRA_CGI", HFILL }}, + { &hf_ngap_failurecellID, + { "failurecellID", "ngap.failurecellID", + FT_UINT32, BASE_DEC, VALS(ngap_NGRAN_CGI_vals), 0, + "NGRAN_CGI", HFILL }}, + { &hf_ngap_earlyIRATHO, + { "earlyIRATHO", "ngap.earlyIRATHO", + FT_UINT32, BASE_DEC, VALS(ngap_T_earlyIRATHO_vals), 0, + NULL, HFILL }}, + { &hf_ngap_candidateCellList, + { "candidateCellList", "ngap.candidateCellList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_lAC, + { "lAC", "ngap.lAC", + FT_UINT16, BASE_DEC_HEX, NULL, 0, + NULL, HFILL }}, { &hf_ngap_nGRANCell, { "nGRANCell", "ngap.nGRANCell_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17106,6 +24522,42 @@ void proto_register_ngap(void) { { "locationReportingReferenceIDToBeCancelled", "ngap.locationReportingReferenceIDToBeCancelled", FT_UINT32, BASE_DEC, NULL, 0, "LocationReportingReferenceID", HFILL }}, + { &hf_ngap_loggingInterval, + { "loggingInterval", "ngap.loggingInterval", + FT_UINT32, BASE_DEC, VALS(ngap_LoggingInterval_vals), 0, + NULL, HFILL }}, + { &hf_ngap_loggingDuration, + { "loggingDuration", "ngap.loggingDuration", + FT_UINT32, BASE_DEC, VALS(ngap_LoggingDuration_vals), 0, + NULL, HFILL }}, + { &hf_ngap_loggedMDTTrigger, + { "loggedMDTTrigger", "ngap.loggedMDTTrigger", + FT_UINT32, BASE_DEC, VALS(ngap_LoggedMDTTrigger_vals), 0, + NULL, HFILL }}, + { &hf_ngap_areaScopeOfNeighCellsList, + { "areaScopeOfNeighCellsList", "ngap.areaScopeOfNeighCellsList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_periodical, + { "periodical", "ngap.periodical_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_eventTrigger, + { "eventTrigger", "ngap.eventTrigger", + FT_UINT32, BASE_DEC, VALS(ngap_EventTrigger_vals), 0, + NULL, HFILL }}, + { &hf_ngap_vehicleUE, + { "vehicleUE", "ngap.vehicleUE", + FT_UINT32, BASE_DEC, VALS(ngap_VehicleUE_vals), 0, + NULL, HFILL }}, + { &hf_ngap_pedestrianUE, + { "pedestrianUE", "ngap.pedestrianUE", + FT_UINT32, BASE_DEC, VALS(ngap_PedestrianUE_vals), 0, + NULL, HFILL }}, + { &hf_ngap_uESidelinkAggregateMaximumBitRate, + { "uESidelinkAggregateMaximumBitRate", "ngap.uESidelinkAggregateMaximumBitRate", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, { &hf_ngap_servingPLMN, { "servingPLMN", "ngap.servingPLMN", FT_BYTES, BASE_NONE, NULL, 0, @@ -17126,10 +24578,122 @@ void proto_register_ngap(void) { { "serviceAreaInformation", "ngap.serviceAreaInformation", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_MDTPLMNList_item, + { "PLMNIdentity", "ngap.PLMNIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_mdt_Config_NR, + { "mdt-Config-NR", "ngap.mdt_Config_NR_element", + FT_NONE, BASE_NONE, NULL, 0, + "MDT_Configuration_NR", HFILL }}, + { &hf_ngap_mdt_Config_EUTRA, + { "mdt-Config-EUTRA", "ngap.mdt_Config_EUTRA_element", + FT_NONE, BASE_NONE, NULL, 0, + "MDT_Configuration_EUTRA", HFILL }}, + { &hf_ngap_mdt_Activation, + { "mdt-Activation", "ngap.mdt_Activation", + FT_UINT32, BASE_DEC, VALS(ngap_MDT_Activation_vals), 0, + NULL, HFILL }}, + { &hf_ngap_areaScopeOfMDT, + { "areaScopeOfMDT", "ngap.areaScopeOfMDT", + FT_UINT32, BASE_DEC, VALS(ngap_AreaScopeOfMDT_NR_vals), 0, + "AreaScopeOfMDT_NR", HFILL }}, + { &hf_ngap_mDTModeNr, + { "mDTModeNr", "ngap.mDTModeNr", + FT_UINT32, BASE_DEC, VALS(ngap_MDTModeNr_vals), 0, + NULL, HFILL }}, + { &hf_ngap_signallingBasedMDTPLMNList, + { "signallingBasedMDTPLMNList", "ngap.signallingBasedMDTPLMNList", + FT_UINT32, BASE_DEC, NULL, 0, + "MDTPLMNList", HFILL }}, + { &hf_ngap_areaScopeOfMDT_01, + { "areaScopeOfMDT", "ngap.areaScopeOfMDT", + FT_UINT32, BASE_DEC, VALS(ngap_AreaScopeOfMDT_EUTRA_vals), 0, + "AreaScopeOfMDT_EUTRA", HFILL }}, + { &hf_ngap_mDTMode, + { "mDTMode", "ngap.mDTMode", + FT_BYTES, BASE_NONE, NULL, 0, + "MDTModeEutra", HFILL }}, + { &hf_ngap_immediateMDTNr, + { "immediateMDTNr", "ngap.immediateMDTNr_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_loggedMDTNr, + { "loggedMDTNr", "ngap.loggedMDTNr_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m1reportingTrigger, + { "m1reportingTrigger", "ngap.m1reportingTrigger", + FT_UINT32, BASE_DEC, VALS(ngap_M1ReportingTrigger_vals), 0, + NULL, HFILL }}, + { &hf_ngap_m1thresholdEventA2, + { "m1thresholdEventA2", "ngap.m1thresholdEventA2_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m1periodicReporting, + { "m1periodicReporting", "ngap.m1periodicReporting_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_threshold_SINR, + { "threshold-SINR", "ngap.threshold_SINR", + FT_UINT32, BASE_CUSTOM, CF_FUNC(ngap_Threshold_SINR_fmt), 0, + NULL, HFILL }}, + { &hf_ngap_reportInterval, + { "reportInterval", "ngap.reportInterval", + FT_UINT32, BASE_DEC, VALS(ngap_ReportIntervalMDT_vals), 0, + "ReportIntervalMDT", HFILL }}, + { &hf_ngap_reportAmount, + { "reportAmount", "ngap.reportAmount", + FT_UINT32, BASE_DEC, VALS(ngap_ReportAmountMDT_vals), 0, + "ReportAmountMDT", HFILL }}, + { &hf_ngap_m4period, + { "m4period", "ngap.m4period", + FT_UINT32, BASE_DEC, VALS(ngap_M4period_vals), 0, + NULL, HFILL }}, + { &hf_ngap_m4_links_to_log, + { "m4-links-to-log", "ngap.m4_links_to_log", + FT_UINT32, BASE_DEC, VALS(ngap_Links_to_log_vals), 0, + "Links_to_log", HFILL }}, + { &hf_ngap_m5period, + { "m5period", "ngap.m5period", + FT_UINT32, BASE_DEC, VALS(ngap_M5period_vals), 0, + NULL, HFILL }}, + { &hf_ngap_m5_links_to_log, + { "m5-links-to-log", "ngap.m5_links_to_log", + FT_UINT32, BASE_DEC, VALS(ngap_Links_to_log_vals), 0, + "Links_to_log", HFILL }}, + { &hf_ngap_m6report_Interval, + { "m6report-Interval", "ngap.m6report_Interval", + FT_UINT32, BASE_DEC, VALS(ngap_M6report_Interval_vals), 0, + NULL, HFILL }}, + { &hf_ngap_m6_links_to_log, + { "m6-links-to-log", "ngap.m6_links_to_log", + FT_UINT32, BASE_DEC, VALS(ngap_Links_to_log_vals), 0, + "Links_to_log", HFILL }}, + { &hf_ngap_m7period, + { "m7period", "ngap.m7period", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_m7_links_to_log, + { "m7-links-to-log", "ngap.m7_links_to_log", + FT_UINT32, BASE_DEC, VALS(ngap_Links_to_log_vals), 0, + "Links_to_log", HFILL }}, + { &hf_ngap_mDT_Location_Infoormation, + { "mDT-Location-Infoormation", "ngap.mDT_Location_Infoormation", + FT_BYTES, BASE_NONE, NULL, 0, + "MDT_Location_Information", HFILL }}, { &hf_ngap_n3IWF_ID_01, { "n3IWF-ID", "ngap.n3IWF_ID", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_16", HFILL }}, + { &hf_ngap_nB_IoT_Paging_eDRXCycle, + { "nB-IoT-Paging-eDRXCycle", "ngap.nB_IoT_Paging_eDRXCycle", + FT_UINT32, BASE_DEC, VALS(ngap_NB_IoT_Paging_eDRXCycle_vals), 0, + NULL, HFILL }}, + { &hf_ngap_nB_IoT_Paging_TimeWindow, + { "nB-IoT-Paging-TimeWindow", "ngap.nB_IoT_Paging_TimeWindow", + FT_UINT32, BASE_DEC, VALS(ngap_NB_IoT_Paging_TimeWindow_vals), 0, + NULL, HFILL }}, { &hf_ngap_macroNgENB_ID, { "macroNgENB-ID", "ngap.macroNgENB_ID", FT_BYTES, BASE_NONE, NULL, 0, @@ -17158,6 +24722,26 @@ void proto_register_ngap(void) { { "TAC", "ngap.TAC", FT_UINT24, BASE_DEC_HEX, NULL, 0, NULL, HFILL }}, + { &hf_ngap_pNI_NPN_Access_Information, + { "pNI-NPN-Access-Information", "ngap.pNI_NPN_Access_Information", + FT_UINT32, BASE_DEC, NULL, 0, + "CellCAGList", HFILL }}, + { &hf_ngap_sNPN_MobilityInformation, + { "sNPN-MobilityInformation", "ngap.sNPN_MobilityInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pNI_NPN_MobilityInformation, + { "pNI-NPN-MobilityInformation", "ngap.pNI_NPN_MobilityInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pNI_NPN_PagingAssistance, + { "pNI-NPN-PagingAssistance", "ngap.pNI_NPN_PagingAssistance", + FT_UINT32, BASE_DEC, NULL, 0, + "Allowed_PNI_NPN_List", HFILL }}, + { &hf_ngap_sNPN, + { "sNPN", "ngap.sNPN", + FT_BYTES, BASE_NONE, NULL, 0, + "NID", HFILL }}, { &hf_ngap_nRCellIdentity, { "nRCellIdentity", "ngap.NRCellIdentity", FT_UINT40, BASE_HEX, NULL, 0, @@ -17170,6 +24754,22 @@ void proto_register_ngap(void) { { "NR-CGI", "ngap.NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_NRFrequencyBand_List_item, + { "NRFrequencyBandItem", "ngap.NRFrequencyBandItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_nr_frequency_band, + { "nr-frequency-band", "ngap.nr_frequency_band", + FT_UINT32, BASE_DEC, NULL, 0, + "NRFrequencyBand", HFILL }}, + { &hf_ngap_nrARFCN, + { "nrARFCN", "ngap.nrARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_frequencyBand_List, + { "frequencyBand-List", "ngap.frequencyBand_List", + FT_UINT32, BASE_DEC, NULL, 0, + "NRFrequencyBand_List", HFILL }}, { &hf_ngap_overloadAction, { "overloadAction", "ngap.overloadAction", FT_UINT32, BASE_DEC, VALS(ngap_OverloadAction_vals), 0, @@ -17198,6 +24798,10 @@ void proto_register_ngap(void) { { "pERExponent", "ngap.pERExponent", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_9_", HFILL }}, + { &hf_ngap_coverageEnhancementLevel, + { "coverageEnhancementLevel", "ngap.coverageEnhancementLevel", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_pagingAttemptCount, { "pagingAttemptCount", "ngap.pagingAttemptCount", FT_UINT32, BASE_DEC, NULL, 0, @@ -17210,6 +24814,14 @@ void proto_register_ngap(void) { { "nextPagingAreaScope", "ngap.nextPagingAreaScope", FT_UINT32, BASE_DEC, VALS(ngap_NextPagingAreaScope_vals), 0, NULL, HFILL }}, + { &hf_ngap_paging_eDRX_Cycle, + { "paging-eDRX-Cycle", "ngap.paging_eDRX_Cycle", + FT_UINT32, BASE_DEC, VALS(ngap_Paging_eDRX_Cycle_vals), 0, + NULL, HFILL }}, + { &hf_ngap_paging_Time_Window, + { "paging-Time-Window", "ngap.paging_Time_Window", + FT_UINT32, BASE_DEC, VALS(ngap_Paging_Time_Window_vals), 0, + NULL, HFILL }}, { &hf_ngap_uL_NGU_UP_TNLInformation, { "uL-NGU-UP-TNLInformation", "ngap.uL_NGU_UP_TNLInformation", FT_UINT32, BASE_DEC, VALS(ngap_UPTransportLayerInformation_vals), 0, @@ -17230,6 +24842,42 @@ void proto_register_ngap(void) { { "qosFlowAcceptedList", "ngap.qosFlowAcceptedList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_pc5QoSFlowList, + { "pc5QoSFlowList", "ngap.pc5QoSFlowList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pc5LinkAggregatedBitRates, + { "pc5LinkAggregatedBitRates", "ngap.pc5LinkAggregatedBitRates", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_ngap_PC5QoSFlowList_item, + { "PC5QoSFlowItem", "ngap.PC5QoSFlowItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pQI, + { "pQI", "ngap.pQI", + FT_UINT32, BASE_DEC, NULL, 0, + "FiveQI", HFILL }}, + { &hf_ngap_pc5FlowBitRates, + { "pc5FlowBitRates", "ngap.pc5FlowBitRates_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_range, + { "range", "ngap.range", + FT_UINT32, BASE_DEC, VALS(ngap_Range_vals), 0, + NULL, HFILL }}, + { &hf_ngap_guaranteedFlowBitRate, + { "guaranteedFlowBitRate", "ngap.guaranteedFlowBitRate", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_ngap_maximumFlowBitRate, + { "maximumFlowBitRate", "ngap.maximumFlowBitRate", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_ngap_PCIListForMDT_item, + { "NR-PCI", "ngap.NR_PCI", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ngap_pDUSessionAggregateMaximumBitRateDL, { "pDUSessionAggregateMaximumBitRateDL", "ngap.pDUSessionAggregateMaximumBitRateDL", FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, @@ -17266,6 +24914,14 @@ void proto_register_ngap(void) { { "pDUSessionResourceModifyUnsuccessfulTransfer", "ngap.pDUSessionResourceModifyUnsuccessfulTransfer", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceFailedToResumeListRESReq_item, + { "PDUSessionResourceFailedToResumeItemRESReq", "ngap.PDUSessionResourceFailedToResumeItemRESReq_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceFailedToResumeListRESRes_item, + { "PDUSessionResourceFailedToResumeItemRESRes", "ngap.PDUSessionResourceFailedToResumeItemRESRes_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceFailedToSetupListCxtFail_item, { "PDUSessionResourceFailedToSetupItemCxtFail", "ngap.PDUSessionResourceFailedToSetupItemCxtFail_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17462,6 +25118,22 @@ void proto_register_ngap(void) { { "pDUSessionResourceReleaseResponseTransfer", "ngap.pDUSessionResourceReleaseResponseTransfer", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceResumeListRESReq_item, + { "PDUSessionResourceResumeItemRESReq", "ngap.PDUSessionResourceResumeItemRESReq_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_uEContextResumeRequestTransfer, + { "uEContextResumeRequestTransfer", "ngap.uEContextResumeRequestTransfer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_PDUSessionResourceResumeListRESRes_item, + { "PDUSessionResourceResumeItemRESRes", "ngap.PDUSessionResourceResumeItemRESRes_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_uEContextResumeResponseTransfer, + { "uEContextResumeResponseTransfer", "ngap.uEContextResumeResponseTransfer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceSecondaryRATUsageList_item, { "PDUSessionResourceSecondaryRATUsageItem", "ngap.PDUSessionResourceSecondaryRATUsageItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17514,6 +25186,14 @@ void proto_register_ngap(void) { { "pDUSessionResourceSetupResponseTransfer", "ngap.pDUSessionResourceSetupResponseTransfer", FT_BYTES, BASE_NONE, NULL, 0, "T_pDUSessionResourceSetupResponseTransfer_01", HFILL }}, + { &hf_ngap_PDUSessionResourceSuspendListSUSReq_item, + { "PDUSessionResourceSuspendItemSUSReq", "ngap.PDUSessionResourceSuspendItemSUSReq_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_uEContextSuspendRequestTransfer, + { "uEContextSuspendRequestTransfer", "ngap.uEContextSuspendRequestTransfer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_PDUSessionResourceSwitchedList_item, { "PDUSessionResourceSwitchedItem", "ngap.PDUSessionResourceSwitchedItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17562,6 +25242,10 @@ void proto_register_ngap(void) { { "sliceSupportList", "ngap.sliceSupportList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_allowed_PNI_NPI_List, + { "allowed-PNI-NPI-List", "ngap.allowed_PNI_NPI_List", + FT_UINT32, BASE_DEC, NULL, 0, + "Allowed_PNI_NPN_List", HFILL }}, { &hf_ngap_eUTRA_CGI_PWSFailedList, { "eUTRA-CGI-PWSFailedList", "ngap.eUTRA_CGI_PWSFailedList", FT_UINT32, BASE_DEC, NULL, 0, @@ -17706,6 +25390,10 @@ void proto_register_ngap(void) { { "aMFPagingTarget", "ngap.aMFPagingTarget", FT_UINT32, BASE_DEC, VALS(ngap_AMFPagingTarget_vals), 0, NULL, HFILL }}, + { &hf_ngap_rSN, + { "rSN", "ngap.rSN", + FT_UINT32, BASE_DEC, VALS(ngap_RSN_vals), 0, + NULL, HFILL }}, { &hf_ngap_nG_Interface, { "nG-Interface", "ngap.nG_Interface", FT_UINT32, BASE_DEC, VALS(ngap_ResetAll_vals), 0, @@ -17714,6 +25402,38 @@ void proto_register_ngap(void) { { "partOfNG-Interface", "ngap.partOfNG_Interface", FT_UINT32, BASE_DEC, NULL, 0, "UE_associatedLogicalNG_connectionList", HFILL }}, + { &hf_ngap_targetRANNodeID, + { "targetRANNodeID", "ngap.targetRANNodeID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_sourceRANNodeID, + { "sourceRANNodeID", "ngap.sourceRANNodeID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_rIMInformation, + { "rIMInformation", "ngap.rIMInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_targetgNBSetID, + { "targetgNBSetID", "ngap.targetgNBSetID", + FT_BYTES, BASE_NONE, NULL, 0, + "GNBSetID", HFILL }}, + { &hf_ngap_rIM_RSDetection, + { "rIM-RSDetection", "ngap.rIM_RSDetection", + FT_UINT32, BASE_DEC, VALS(ngap_T_rIM_RSDetection_vals), 0, + NULL, HFILL }}, + { &hf_ngap_dayofWeek, + { "dayofWeek", "ngap.dayofWeek", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_7", HFILL }}, + { &hf_ngap_timeofDayStart, + { "timeofDayStart", "ngap.timeofDayStart", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_86399_", HFILL }}, + { &hf_ngap_timeofDayEnd, + { "timeofDayEnd", "ngap.timeofDayEnd", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_86399_", HFILL }}, { &hf_ngap_SCTP_TLAs_item, { "TransportLayerAddress", "ngap.TransportLayerAddress", FT_BYTES, BASE_NONE, NULL, 0, @@ -17758,6 +25478,30 @@ void proto_register_ngap(void) { { "confidentialityProtectionResult", "ngap.confidentialityProtectionResult", FT_UINT32, BASE_DEC, VALS(ngap_ConfidentialityProtectionResult_vals), 0, NULL, HFILL }}, + { &hf_ngap_sensorMeasConfig, + { "sensorMeasConfig", "ngap.sensorMeasConfig", + FT_UINT32, BASE_DEC, VALS(ngap_SensorMeasConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_sensorMeasConfigName, + { "sensorMeasConfigName", "ngap.sensorMeasConfigName", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_SensorMeasConfigName_item, + { "SensorNameConfig", "ngap.SensorNameConfig", + FT_UINT32, BASE_DEC, VALS(ngap_SensorNameConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_uncompensattedBarometericConfig, + { "uncompensattedBarometericConfig", "ngap.uncompensattedBarometericConfig", + FT_UINT32, BASE_DEC, VALS(ngap_T_uncompensattedBarometericConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_ueSpeedConfig, + { "ueSpeedConfig", "ngap.ueSpeedConfig", + FT_UINT32, BASE_DEC, VALS(ngap_T_ueSpeedConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_ueOrientationConfig, + { "ueOrientationConfig", "ngap.ueOrientationConfig", + FT_UINT32, BASE_DEC, VALS(ngap_T_ueOrientationConfig_vals), 0, + NULL, HFILL }}, { &hf_ngap_ServedGUAMIList_item, { "ServedGUAMIItem", "ngap.ServedGUAMIItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17790,6 +25534,10 @@ void proto_register_ngap(void) { { "SliceSupportItem", "ngap.SliceSupportItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_serving_NID, + { "serving-NID", "ngap.serving_NID", + FT_BYTES, BASE_NONE, NULL, 0, + "NID", HFILL }}, { &hf_ngap_sST, { "sST", "ngap.sST", FT_BYTES, BASE_NONE, NULL, 0, @@ -17798,14 +25546,6 @@ void proto_register_ngap(void) { { "sD", "ngap.sD", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ngap_targetRANNodeID, - { "targetRANNodeID", "ngap.targetRANNodeID_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_ngap_sourceRANNodeID, - { "sourceRANNodeID", "ngap.sourceRANNodeID_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_ngap_sONInformation, { "sONInformation", "ngap.sONInformation", FT_UINT32, BASE_DEC, VALS(ngap_SONInformation_vals), 0, @@ -17822,6 +25562,14 @@ void proto_register_ngap(void) { { "sONInformationReply", "ngap.sONInformationReply_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_failureIndicationInformation_01, + { "failureIndicationInformation", "ngap.failureIndicationInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "FailureIndication", HFILL }}, + { &hf_ngap_hOReportInformation_01, + { "hOReportInformation", "ngap.hOReportInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "HOReport", HFILL }}, { &hf_ngap_rRCContainer, { "rRCContainer", "ngap.rRCContainer", FT_BYTES, BASE_NONE, NULL, 0, @@ -17846,10 +25594,6 @@ void proto_register_ngap(void) { { "uEHistoryInformation", "ngap.uEHistoryInformation", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_ngap_selectedTAI, - { "selectedTAI", "ngap.selectedTAI_element", - FT_NONE, BASE_NONE, NULL, 0, - "TAI", HFILL }}, { &hf_ngap_configuredNSSAI, { "configuredNSSAI", "ngap.configuredNSSAI", FT_BYTES, BASE_NONE, NULL, 0, @@ -17934,6 +25678,26 @@ void proto_register_ngap(void) { { "targeteNB-ID", "ngap.targeteNB_ID_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_cell_CAGInformation, + { "cell-CAGInformation", "ngap.cell_CAGInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_lAI, + { "lAI", "ngap.lAI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_rNC_ID, + { "rNC-ID", "ngap.rNC_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_extendedRNC_ID, + { "extendedRNC-ID", "ngap.extendedRNC_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tNGF_ID_01, + { "tNGF-ID", "ngap.tNGF_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32_", HFILL }}, { &hf_ngap_TNLAssociationList_item, { "TNLAssociationItem", "ngap.TNLAssociationItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17958,6 +25722,42 @@ void proto_register_ngap(void) { { "traceCollectionEntityIPAddress", "ngap.traceCollectionEntityIPAddress", FT_BYTES, BASE_NONE, NULL, 0, "TransportLayerAddress", HFILL }}, + { &hf_ngap_tAIListforMDT, + { "tAIListforMDT", "ngap.tAIListforMDT", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_TAIListforMDT_item, + { "TAI", "ngap.TAI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tAListforMDT, + { "tAListforMDT", "ngap.tAListforMDT", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_TAListforMDT_item, + { "TAC", "ngap.TAC", + FT_UINT24, BASE_DEC_HEX, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tWIF_ID_01, + { "tWIF-ID", "ngap.tWIF_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32_", HFILL }}, + { &hf_ngap_periodicity, + { "periodicity", "ngap.periodicity", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_microseconds, 0, + NULL, HFILL }}, + { &hf_ngap_burstArrivalTime, + { "burstArrivalTime", "ngap.burstArrivalTime", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tSCAssistanceInformationDL, + { "tSCAssistanceInformationDL", "ngap.tSCAssistanceInformationDL_element", + FT_NONE, BASE_NONE, NULL, 0, + "TSCAssistanceInformation", HFILL }}, + { &hf_ngap_tSCAssistanceInformationUL, + { "tSCAssistanceInformationUL", "ngap.tSCAssistanceInformationUL_element", + FT_NONE, BASE_NONE, NULL, 0, + "TSCAssistanceInformation", HFILL }}, { &hf_ngap_uEAggregateMaximumBitRateDL, { "uEAggregateMaximumBitRateDL", "ngap.uEAggregateMaximumBitRateDL", FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, @@ -17978,10 +25778,46 @@ void proto_register_ngap(void) { { "rAN-UE-NGAP-ID", "ngap.rAN_UE_NGAP_ID", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_qosFlowFailedToResumeList, + { "qosFlowFailedToResumeList", "ngap.qosFlowFailedToResumeList", + FT_UINT32, BASE_DEC, NULL, 0, + "QosFlowListWithCause", HFILL }}, + { &hf_ngap_suspendIndicator, + { "suspendIndicator", "ngap.suspendIndicator", + FT_UINT32, BASE_DEC, VALS(ngap_SuspendIndicator_vals), 0, + NULL, HFILL }}, + { &hf_ngap_periodicCommunicationIndicator, + { "periodicCommunicationIndicator", "ngap.periodicCommunicationIndicator", + FT_UINT32, BASE_DEC, VALS(ngap_T_periodicCommunicationIndicator_vals), 0, + NULL, HFILL }}, + { &hf_ngap_periodicTime, + { "periodicTime", "ngap.periodicTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3600_", HFILL }}, + { &hf_ngap_scheduledCommunicationTime, + { "scheduledCommunicationTime", "ngap.scheduledCommunicationTime_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_stationaryIndication, + { "stationaryIndication", "ngap.stationaryIndication", + FT_UINT32, BASE_DEC, VALS(ngap_T_stationaryIndication_vals), 0, + NULL, HFILL }}, + { &hf_ngap_trafficProfile, + { "trafficProfile", "ngap.trafficProfile", + FT_UINT32, BASE_DEC, VALS(ngap_T_trafficProfile_vals), 0, + NULL, HFILL }}, + { &hf_ngap_batteryIndication, + { "batteryIndication", "ngap.batteryIndication", + FT_UINT32, BASE_DEC, VALS(ngap_T_batteryIndication_vals), 0, + NULL, HFILL }}, { &hf_ngap_UEHistoryInformation_item, { "LastVisitedCellItem", "ngap.LastVisitedCellItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_nR, + { "nR", "ngap.nR", + FT_BYTES, BASE_NONE, NULL, 0, + "NRMobilityHistoryReport", HFILL }}, { &hf_ngap_indexLength10, { "indexLength10", "ngap.indexLength10", FT_BYTES, BASE_NONE, NULL, 0, @@ -18010,6 +25846,14 @@ void proto_register_ngap(void) { { "uERadioCapabilityForPagingOfEUTRA", "ngap.uERadioCapabilityForPagingOfEUTRA", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_nR_01, + { "nR", "ngap.nR", + FT_BYTES, BASE_NONE, NULL, 0, + "NRUERLFReportContainer", HFILL }}, + { &hf_ngap_lTE, + { "lTE", "ngap.lTE", + FT_BYTES, BASE_NONE, NULL, 0, + "LTEUERLFReportContainer", HFILL }}, { &hf_ngap_nRencryptionAlgorithms, { "nRencryptionAlgorithms", "ngap.nRencryptionAlgorithms", FT_BYTES, BASE_NONE, NULL, 0, @@ -18026,6 +25870,14 @@ void proto_register_ngap(void) { { "eUTRAintegrityProtectionAlgorithms", "ngap.eUTRAintegrityProtectionAlgorithms", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_ngap_ul_NAS_MAC, + { "ul-NAS-MAC", "ngap.ul_NAS_MAC", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_ul_NAS_Count, + { "ul-NAS-Count", "ngap.ul_NAS_Count", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_UL_NGU_UP_TNLModifyList_item, { "UL-NGU-UP-TNLModifyItem", "ngap.UL_NGU_UP_TNLModifyItem_element", FT_NONE, BASE_NONE, NULL, 0, @@ -18074,6 +25926,22 @@ void proto_register_ngap(void) { { "iPAddress", "ngap.iPAddress", FT_BYTES, BASE_NONE, NULL, 0, "TransportLayerAddress", HFILL }}, + { &hf_ngap_tNAP_ID, + { "tNAP-ID", "ngap.tNAP_ID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_tWAP_ID, + { "tWAP-ID", "ngap.tWAP_ID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_globalLine_ID, + { "globalLine-ID", "ngap.globalLine_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_hFCNode_ID, + { "hFCNode-ID", "ngap.hFCNode_ID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ngap_VolumeTimedReportList_item, { "VolumeTimedReport-Item", "ngap.VolumeTimedReport_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -18094,6 +25962,10 @@ void proto_register_ngap(void) { { "usageCountDL", "ngap.usageCountDL", FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_octet_octets, 0, "INTEGER_0_18446744073709551615", HFILL }}, + { &hf_ngap_w_AGF_ID_01, + { "w-AGF-ID", "ngap.w_AGF_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, { &hf_ngap_eUTRA_CGIListForWarning, { "eUTRA-CGIListForWarning", "ngap.eUTRA_CGIListForWarning", FT_UINT32, BASE_DEC, NULL, 0, @@ -18110,6 +25982,30 @@ void proto_register_ngap(void) { { "emergencyAreaIDList", "ngap.emergencyAreaIDList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ngap_wlanMeasConfig, + { "wlanMeasConfig", "ngap.wlanMeasConfig", + FT_UINT32, BASE_DEC, VALS(ngap_WLANMeasConfig_vals), 0, + NULL, HFILL }}, + { &hf_ngap_wlanMeasConfigNameList, + { "wlanMeasConfigNameList", "ngap.wlanMeasConfigNameList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_wlan_rssi, + { "wlan-rssi", "ngap.wlan_rssi", + FT_UINT32, BASE_DEC, VALS(ngap_T_wlan_rssi_vals), 0, + NULL, HFILL }}, + { &hf_ngap_wlan_rtt, + { "wlan-rtt", "ngap.wlan_rtt", + FT_UINT32, BASE_DEC, VALS(ngap_T_wlan_rtt_vals), 0, + NULL, HFILL }}, + { &hf_ngap_WLANMeasConfigNameList_item, + { "WLANName", "ngap.WLANName", + FT_STRING, STR_UNICODE, NULL, 0, + NULL, HFILL }}, + { &hf_ngap_pagingProbabilityInformation, + { "pagingProbabilityInformation", "ngap.pagingProbabilityInformation", + FT_UINT32, BASE_DEC, VALS(ngap_PagingProbabilityInformation_vals), 0, + NULL, HFILL }}, { &hf_ngap_XnExtTLAs_item, { "XnExtTLA-Item", "ngap.XnExtTLA_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -18168,7 +26064,7 @@ void proto_register_ngap(void) { "UnsuccessfulOutcome_value", HFILL }}, /*--- End of included file: packet-ngap-hfarr.c ---*/ -#line 733 "./asn1/ngap/packet-ngap-template.c" +#line 882 "./asn1/ngap/packet-ngap-template.c" }; /* List of subtrees */ @@ -18199,6 +26095,16 @@ void proto_register_ngap(void) { &ett_ngap_NASC, &ett_ngap_NAS_PDU, &ett_ngap_EN_DCSONConfigurationTransfer, + &ett_ngap_BurstArrivalTime, + &ett_ngap_CoverageEnhancementLevel, + &ett_ngap_MDTModeEutra, + &ett_ngap_MeasurementsToActivate, + &ett_ngap_MDT_Location_Information, + &ett_ngap_NRMobilityHistoryReport, + &ett_ngap_LTEUERLFReportContainer, + &ett_ngap_NRUERLFReportContainer, + &ett_ngap_TargettoSource_Failure_TransparentContainer, + &ett_ngap_UERadioCapabilityForPagingOfNB_IoT, /*--- Included file: packet-ngap-ettarr.c ---*/ #line 1 "./asn1/ngap/packet-ngap-ettarr.c" @@ -18212,9 +26118,14 @@ void proto_register_ngap(void) { &ett_ngap_AdditionalDLUPTNLInformationForHOList, &ett_ngap_AdditionalDLUPTNLInformationForHOItem, &ett_ngap_AllocationAndRetentionPriority, + &ett_ngap_Allowed_CAG_List_per_PLMN, &ett_ngap_AllowedNSSAI, &ett_ngap_AllowedNSSAI_Item, + &ett_ngap_Allowed_PNI_NPN_List, + &ett_ngap_Allowed_PNI_NPN_Item, &ett_ngap_AllowedTACs, + &ett_ngap_AlternativeQoSParaSetList, + &ett_ngap_AlternativeQoSParaSetItem, &ett_ngap_AMFPagingTarget, &ett_ngap_AMF_TNLAssociationSetupList, &ett_ngap_AMF_TNLAssociationSetupItem, @@ -18237,10 +26148,16 @@ void proto_register_ngap(void) { &ett_ngap_AssistanceDataForRecommendedCells, &ett_ngap_AssociatedQosFlowList, &ett_ngap_AssociatedQosFlowItem, + &ett_ngap_AreaScopeOfMDT_NR, + &ett_ngap_AreaScopeOfMDT_EUTRA, + &ett_ngap_AreaScopeOfNeighCellsList, + &ett_ngap_AreaScopeOfNeighCellsItem, &ett_ngap_BroadcastCancelledAreaList, &ett_ngap_BroadcastCompletedAreaList, &ett_ngap_BroadcastPLMNList, &ett_ngap_BroadcastPLMNItem, + &ett_ngap_BluetoothMeasurementConfiguration, + &ett_ngap_BluetoothMeasConfigNameList, &ett_ngap_CancelledCellsInEAI_EUTRA, &ett_ngap_CancelledCellsInEAI_EUTRA_Item, &ett_ngap_CancelledCellsInEAI_NR, @@ -18249,7 +26166,13 @@ void proto_register_ngap(void) { &ett_ngap_CancelledCellsInTAI_EUTRA_Item, &ett_ngap_CancelledCellsInTAI_NR, &ett_ngap_CancelledCellsInTAI_NR_Item, + &ett_ngap_CandidateCellList, + &ett_ngap_CandidateCell_Item, + &ett_ngap_CandidateCellID, + &ett_ngap_CandidatePCI, &ett_ngap_Cause, + &ett_ngap_Cell_CAGInformation, + &ett_ngap_CellCAGList, &ett_ngap_CellIDBroadcastEUTRA, &ett_ngap_CellIDBroadcastEUTRA_Item, &ett_ngap_CellIDBroadcastNR, @@ -18278,8 +26201,19 @@ void proto_register_ngap(void) { &ett_ngap_CriticalityDiagnostics, &ett_ngap_CriticalityDiagnostics_IE_List, &ett_ngap_CriticalityDiagnostics_IE_Item, + &ett_ngap_CellBasedMDT_NR, + &ett_ngap_CellIdListforMDT_NR, + &ett_ngap_CellBasedMDT_EUTRA, + &ett_ngap_CellIdListforMDT_EUTRA, &ett_ngap_DataForwardingResponseDRBList, &ett_ngap_DataForwardingResponseDRBItem, + &ett_ngap_DAPSRequestInfo, + &ett_ngap_DAPSResponseInfoList, + &ett_ngap_DAPSResponseInfoItem, + &ett_ngap_DAPSResponseInfo, + &ett_ngap_DataForwardingResponseERABList, + &ett_ngap_DataForwardingResponseERABListItem, + &ett_ngap_DL_CP_SecurityInformation, &ett_ngap_DRBsSubjectToStatusTransferList, &ett_ngap_DRBsSubjectToStatusTransferItem, &ett_ngap_DRBStatusDL, @@ -18291,6 +26225,11 @@ void proto_register_ngap(void) { &ett_ngap_DRBsToQosFlowsMappingList, &ett_ngap_DRBsToQosFlowsMappingItem, &ett_ngap_Dynamic5QIDescriptor, + &ett_ngap_EarlyStatusTransfer_TransparentContainer, + &ett_ngap_ProcedureStageChoice, + &ett_ngap_FirstDLCount, + &ett_ngap_DRBsSubjectToEarlyStatusTransfer_List, + &ett_ngap_DRBsSubjectToEarlyStatusTransfer_Item, &ett_ngap_EmergencyAreaIDBroadcastEUTRA, &ett_ngap_EmergencyAreaIDBroadcastEUTRA_Item, &ett_ngap_EmergencyAreaIDBroadcastNR, @@ -18302,6 +26241,7 @@ void proto_register_ngap(void) { &ett_ngap_EmergencyAreaIDList, &ett_ngap_EmergencyAreaIDListForRestart, &ett_ngap_EmergencyFallbackIndicator, + &ett_ngap_ENB_ID, &ett_ngap_EndpointIPAddressAndPort, &ett_ngap_EquivalentPLMNs, &ett_ngap_EPS_TAI, @@ -18314,15 +26254,28 @@ void proto_register_ngap(void) { &ett_ngap_ExpectedUEBehaviour, &ett_ngap_ExpectedUEMovingTrajectory, &ett_ngap_ExpectedUEMovingTrajectoryItem, + &ett_ngap_ExtendedRATRestrictionInformation, + &ett_ngap_ExtendedSliceSupportList, + &ett_ngap_EventTrigger, + &ett_ngap_EventL1LoggedMDTConfig, + &ett_ngap_MeasurementThresholdL1LoggedMDT, + &ett_ngap_FailureIndication, &ett_ngap_FiveG_S_TMSI, &ett_ngap_ForbiddenAreaInformation, &ett_ngap_ForbiddenAreaInformation_Item, &ett_ngap_ForbiddenTACs, + &ett_ngap_FromEUTRANtoNGRAN, + &ett_ngap_FromNGRANtoEUTRAN, &ett_ngap_GBR_QosInformation, + &ett_ngap_GlobalENB_ID, &ett_ngap_GlobalGNB_ID, &ett_ngap_GlobalN3IWF_ID, + &ett_ngap_GlobalLine_ID, &ett_ngap_GlobalNgENB_ID, &ett_ngap_GlobalRANNodeID, + &ett_ngap_GlobalTNGF_ID, + &ett_ngap_GlobalTWIF_ID, + &ett_ngap_GlobalW_AGF_ID, &ett_ngap_GNB_ID, &ett_ngap_GTPTunnel, &ett_ngap_GUAMI, @@ -18331,31 +26284,78 @@ void proto_register_ngap(void) { &ett_ngap_HandoverRequestAcknowledgeTransfer, &ett_ngap_HandoverRequiredTransfer, &ett_ngap_HandoverResourceAllocationUnsuccessfulTransfer, + &ett_ngap_HOReport, &ett_ngap_InfoOnRecommendedCellsAndRANNodesForPaging, + &ett_ngap_ImmediateMDTNr, + &ett_ngap_InterSystemFailureIndication, + &ett_ngap_IntersystemSONConfigurationTransfer, + &ett_ngap_IntersystemSONTransferType, + &ett_ngap_IntersystemSONeNBID, + &ett_ngap_IntersystemSONNGRANnodeID, + &ett_ngap_IntersystemSONInformation, + &ett_ngap_IntersystemSONInformationReport, + &ett_ngap_InterSystemHOReport, + &ett_ngap_InterSystemHandoverReportType, + &ett_ngap_IntersystemUnnecessaryHO, + &ett_ngap_LAI, &ett_ngap_LastVisitedCellInformation, &ett_ngap_LastVisitedCellItem, &ett_ngap_LastVisitedNGRANCellInformation, &ett_ngap_LocationReportingRequestType, + &ett_ngap_LoggedMDTNr, + &ett_ngap_LoggedMDTTrigger, + &ett_ngap_LTEV2XServicesAuthorized, + &ett_ngap_LTEUESidelinkAggregateMaximumBitrate, &ett_ngap_MobilityRestrictionList, + &ett_ngap_MDTPLMNList, + &ett_ngap_MDT_Configuration, + &ett_ngap_MDT_Configuration_NR, + &ett_ngap_MDT_Configuration_EUTRA, + &ett_ngap_MDTModeNr, + &ett_ngap_M1Configuration, + &ett_ngap_M1ThresholdEventA2, + &ett_ngap_M1PeriodicReporting, + &ett_ngap_M4Configuration, + &ett_ngap_M5Configuration, + &ett_ngap_M6Configuration, + &ett_ngap_M7Configuration, + &ett_ngap_MDT_Location_Info, &ett_ngap_N3IWF_ID, + &ett_ngap_NB_IoT_Paging_eDRXInfo, &ett_ngap_NgENB_ID, &ett_ngap_NGRAN_CGI, &ett_ngap_NGRAN_TNLAssociationToRemoveList, &ett_ngap_NGRAN_TNLAssociationToRemoveItem, &ett_ngap_NonDynamic5QIDescriptor, &ett_ngap_NotAllowedTACs, + &ett_ngap_NPN_AccessInformation, + &ett_ngap_NPN_MobilityInformation, + &ett_ngap_NPN_PagingAssistanceInformation, + &ett_ngap_NPN_Support, &ett_ngap_NR_CGI, &ett_ngap_NR_CGIList, &ett_ngap_NR_CGIListForWarning, + &ett_ngap_NRFrequencyBand_List, + &ett_ngap_NRFrequencyBandItem, + &ett_ngap_NRFrequencyInfo, + &ett_ngap_NRV2XServicesAuthorized, + &ett_ngap_NRUESidelinkAggregateMaximumBitrate, &ett_ngap_OverloadResponse, &ett_ngap_OverloadStartNSSAIList, &ett_ngap_OverloadStartNSSAIItem, &ett_ngap_PacketErrorRate, + &ett_ngap_PagingAssisDataforCEcapabUE, &ett_ngap_PagingAttemptInformation, + &ett_ngap_PagingeDRXInformation, &ett_ngap_PathSwitchRequestAcknowledgeTransfer, &ett_ngap_PathSwitchRequestSetupFailedTransfer, &ett_ngap_PathSwitchRequestTransfer, &ett_ngap_PathSwitchRequestUnsuccessfulTransfer, + &ett_ngap_PC5QoSParameters, + &ett_ngap_PC5QoSFlowList, + &ett_ngap_PC5QoSFlowItem, + &ett_ngap_PC5FlowBitRates, + &ett_ngap_PCIListForMDT, &ett_ngap_PDUSessionAggregateMaximumBitRate, &ett_ngap_PDUSessionResourceAdmittedList, &ett_ngap_PDUSessionResourceAdmittedItem, @@ -18363,6 +26363,10 @@ void proto_register_ngap(void) { &ett_ngap_PDUSessionResourceFailedToModifyItemModCfm, &ett_ngap_PDUSessionResourceFailedToModifyListModRes, &ett_ngap_PDUSessionResourceFailedToModifyItemModRes, + &ett_ngap_PDUSessionResourceFailedToResumeListRESReq, + &ett_ngap_PDUSessionResourceFailedToResumeItemRESReq, + &ett_ngap_PDUSessionResourceFailedToResumeListRESRes, + &ett_ngap_PDUSessionResourceFailedToResumeItemRESRes, &ett_ngap_PDUSessionResourceFailedToSetupListCxtFail, &ett_ngap_PDUSessionResourceFailedToSetupItemCxtFail, &ett_ngap_PDUSessionResourceFailedToSetupListCxtRes, @@ -18411,6 +26415,10 @@ void proto_register_ngap(void) { &ett_ngap_PDUSessionResourceReleasedListRelRes, &ett_ngap_PDUSessionResourceReleasedItemRelRes, &ett_ngap_PDUSessionResourceReleaseResponseTransfer, + &ett_ngap_PDUSessionResourceResumeListRESReq, + &ett_ngap_PDUSessionResourceResumeItemRESReq, + &ett_ngap_PDUSessionResourceResumeListRESRes, + &ett_ngap_PDUSessionResourceResumeItemRESRes, &ett_ngap_PDUSessionResourceSecondaryRATUsageList, &ett_ngap_PDUSessionResourceSecondaryRATUsageItem, &ett_ngap_PDUSessionResourceSetupListCxtReq, @@ -18426,6 +26434,8 @@ void proto_register_ngap(void) { &ett_ngap_PDUSessionResourceSetupRequestTransfer, &ett_ngap_PDUSessionResourceSetupResponseTransfer, &ett_ngap_PDUSessionResourceSetupUnsuccessfulTransfer, + &ett_ngap_PDUSessionResourceSuspendListSUSReq, + &ett_ngap_PDUSessionResourceSuspendItemSUSReq, &ett_ngap_PDUSessionResourceSwitchedList, &ett_ngap_PDUSessionResourceSwitchedItem, &ett_ngap_PDUSessionResourceToBeSwitchedDLList, @@ -18437,6 +26447,7 @@ void proto_register_ngap(void) { &ett_ngap_PDUSessionUsageReport, &ett_ngap_PLMNSupportList, &ett_ngap_PLMNSupportItem, + &ett_ngap_PNI_NPN_MobilityInformation, &ett_ngap_PWSFailedCellIDList, &ett_ngap_QosCharacteristics, &ett_ngap_QosFlowAcceptedList, @@ -18474,13 +26485,20 @@ void proto_register_ngap(void) { &ett_ngap_RecommendedRANNodesForPaging, &ett_ngap_RecommendedRANNodeList, &ett_ngap_RecommendedRANNodeItem, + &ett_ngap_RedundantPDUSessionInformation, &ett_ngap_ResetType, + &ett_ngap_RIMInformationTransfer, + &ett_ngap_RIMInformation, + &ett_ngap_ScheduledCommunicationTime, &ett_ngap_SCTP_TLAs, &ett_ngap_SecondaryRATUsageInformation, &ett_ngap_SecondaryRATDataUsageReportTransfer, &ett_ngap_SecurityContext, &ett_ngap_SecurityIndication, &ett_ngap_SecurityResult, + &ett_ngap_SensorMeasurementConfiguration, + &ett_ngap_SensorMeasConfigName, + &ett_ngap_SensorNameConfig, &ett_ngap_ServedGUAMIList, &ett_ngap_ServedGUAMIItem, &ett_ngap_ServiceAreaInformation, @@ -18489,10 +26507,12 @@ void proto_register_ngap(void) { &ett_ngap_SliceOverloadItem, &ett_ngap_SliceSupportList, &ett_ngap_SliceSupportItem, + &ett_ngap_SNPN_MobilityInformation, &ett_ngap_S_NSSAI, &ett_ngap_SONConfigurationTransfer, &ett_ngap_SONInformation, &ett_ngap_SONInformationReply, + &ett_ngap_SONInformationReport, &ett_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer, &ett_ngap_SourceRANNodeID, &ett_ngap_SourceToTarget_AMFInformationReroute, @@ -18516,14 +26536,30 @@ void proto_register_ngap(void) { &ett_ngap_TargeteNB_ID, &ett_ngap_TargetID, &ett_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer, + &ett_ngap_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer, &ett_ngap_TargetRANNodeID, + &ett_ngap_TargetRNC_ID, + &ett_ngap_TNGF_ID, &ett_ngap_TNLAssociationList, &ett_ngap_TNLAssociationItem, + &ett_ngap_TooearlyIntersystemHO, &ett_ngap_TraceActivation, + &ett_ngap_TAIBasedMDT, + &ett_ngap_TAIListforMDT, + &ett_ngap_TABasedMDT, + &ett_ngap_TAListforMDT, + &ett_ngap_TWIF_ID, + &ett_ngap_TSCAssistanceInformation, + &ett_ngap_TSCTrafficCharacteristics, &ett_ngap_UEAggregateMaximumBitRate, &ett_ngap_UE_associatedLogicalNG_connectionList, &ett_ngap_UE_associatedLogicalNG_connectionItem, + &ett_ngap_UEContextResumeRequestTransfer, + &ett_ngap_UEContextResumeResponseTransfer, + &ett_ngap_UEContextSuspendRequestTransfer, + &ett_ngap_UE_DifferentiationInfo, &ett_ngap_UEHistoryInformation, + &ett_ngap_UEHistoryInformationFromTheUE, &ett_ngap_UEIdentityIndexValue, &ett_ngap_UE_NGAP_IDs, &ett_ngap_UE_NGAP_ID_pair, @@ -18531,7 +26567,9 @@ void proto_register_ngap(void) { &ett_ngap_UEPresenceInAreaOfInterestList, &ett_ngap_UEPresenceInAreaOfInterestItem, &ett_ngap_UERadioCapabilityForPaging, + &ett_ngap_UERLFReportContainer, &ett_ngap_UESecurityCapabilities, + &ett_ngap_UL_CP_SecurityInformation, &ett_ngap_UL_NGU_UP_TNLModifyList, &ett_ngap_UL_NGU_UP_TNLModifyItem, &ett_ngap_UnavailableGUAMIList, @@ -18544,11 +26582,18 @@ void proto_register_ngap(void) { &ett_ngap_UserLocationInformation, &ett_ngap_UserLocationInformationEUTRA, &ett_ngap_UserLocationInformationN3IWF, + &ett_ngap_UserLocationInformationTNGF, + &ett_ngap_UserLocationInformationTWIF, + &ett_ngap_UserLocationInformationW_AGF, &ett_ngap_UserLocationInformationNR, &ett_ngap_UserPlaneSecurityInformation, &ett_ngap_VolumeTimedReportList, &ett_ngap_VolumeTimedReport_Item, + &ett_ngap_W_AGF_ID, &ett_ngap_WarningAreaList, + &ett_ngap_WLANMeasurementConfiguration, + &ett_ngap_WLANMeasConfigNameList, + &ett_ngap_WUS_Assistance_Information, &ett_ngap_XnExtTLAs, &ett_ngap_XnExtTLA_Item, &ett_ngap_XnGTP_TLAs, @@ -18569,10 +26614,19 @@ void proto_register_ngap(void) { &ett_ngap_UEContextReleaseRequest, &ett_ngap_UEContextReleaseCommand, &ett_ngap_UEContextReleaseComplete, + &ett_ngap_UEContextResumeRequest, + &ett_ngap_UEContextResumeResponse, + &ett_ngap_UEContextResumeFailure, + &ett_ngap_UEContextSuspendRequest, + &ett_ngap_UEContextSuspendResponse, + &ett_ngap_UEContextSuspendFailure, &ett_ngap_UEContextModificationRequest, &ett_ngap_UEContextModificationResponse, &ett_ngap_UEContextModificationFailure, &ett_ngap_RRCInactiveTransitionReport, + &ett_ngap_RetrieveUEInformation, + &ett_ngap_UEInformationTransfer, + &ett_ngap_RANCPRelocationIndication, &ett_ngap_HandoverRequired, &ett_ngap_HandoverCommand, &ett_ngap_HandoverPreparationFailure, @@ -18585,6 +26639,9 @@ void proto_register_ngap(void) { &ett_ngap_PathSwitchRequestFailure, &ett_ngap_HandoverCancel, &ett_ngap_HandoverCancelAcknowledge, + &ett_ngap_HandoverSuccess, + &ett_ngap_UplinkRANEarlyStatusTransfer, + &ett_ngap_DownlinkRANEarlyStatusTransfer, &ett_ngap_UplinkRANStatusTransfer, &ett_ngap_DownlinkRANStatusTransfer, &ett_ngap_Paging, @@ -18633,13 +26690,19 @@ void proto_register_ngap(void) { &ett_ngap_UERadioCapabilityCheckResponse, &ett_ngap_PrivateMessage, &ett_ngap_SecondaryRATDataUsageReport, + &ett_ngap_UplinkRIMInformationTransfer, + &ett_ngap_DownlinkRIMInformationTransfer, + &ett_ngap_ConnectionEstablishmentIndication, + &ett_ngap_UERadioCapabilityIDMappingRequest, + &ett_ngap_UERadioCapabilityIDMappingResponse, + &ett_ngap_AMFCPRelocationIndication, &ett_ngap_NGAP_PDU, &ett_ngap_InitiatingMessage, &ett_ngap_SuccessfulOutcome, &ett_ngap_UnsuccessfulOutcome, /*--- End of included file: packet-ngap-ettarr.c ---*/ -#line 764 "./asn1/ngap/packet-ngap-template.c" +#line 923 "./asn1/ngap/packet-ngap-template.c" }; static ei_register_info ei[] = { @@ -18688,6 +26751,9 @@ void proto_register_ngap(void) { "Select whether target NG-RAN container should be decoded automatically" " (based on NG Setup procedure) or manually", &ngap_dissect_target_ng_ran_container_as, ngap_target_ng_ran_container_vals, FALSE); + prefs_register_enum_preference(ngap_module, "dissect_lte_container_as", "Dissect LTE container as", + "Select whether LTE container should be dissected as NB-IOT or legacy LTE", + &ngap_dissect_lte_container_as, ngap_lte_container_vals, FALSE); } /* diff --git a/epan/dissectors/packet-ngap.h b/epan/dissectors/packet-ngap.h index e6f5434e06..b549807691 100644 --- a/epan/dissectors/packet-ngap.h +++ b/epan/dissectors/packet-ngap.h @@ -24,7 +24,9 @@ #line 1 "./asn1/ngap/packet-ngap-exp.h" int dissect_ngap_LastVisitedNGRANCellInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_ngap_MobilityRestrictionList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_ngap_MDT_Configuration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_ngap_NGRAN_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_ngap_SONConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_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 b13631d4f5..2356def7c9 100644 --- a/epan/dissectors/packet-nr-rrc.c +++ b/epan/dissectors/packet-nr-rrc.c @@ -410,6 +410,7 @@ static int hf_nr_rrc_nr_rrc_MeasGapSharingConfig_PDU = -1; /* MeasGapSharingCon static int hf_nr_rrc_nr_rrc_MeasResultSCG_Failure_PDU = -1; /* MeasResultSCG_Failure */ static int hf_nr_rrc_nr_rrc_P_Max_PDU = -1; /* P_Max */ static int hf_nr_rrc_nr_rrc_RadioBearerConfig_PDU = -1; /* RadioBearerConfig */ +static int hf_nr_rrc_nr_rrc_ReferenceTime_r16_PDU = -1; /* ReferenceTime_r16 */ static int hf_nr_rrc_nr_rrc_TDD_UL_DL_ConfigCommon_PDU = -1; /* TDD_UL_DL_ConfigCommon */ static int hf_nr_rrc_nr_rrc_UplinkTxDirectCurrentList_PDU = -1; /* UplinkTxDirectCurrentList */ static int hf_nr_rrc_nr_rrc_SupportedBandCombinationListSidelink_r16_PDU = -1; /* SupportedBandCombinationListSidelink_r16 */ @@ -421,6 +422,7 @@ static int hf_nr_rrc_nr_rrc_UE_CapabilityRequestFilterCommon_PDU = -1; /* UE_Ca static int hf_nr_rrc_nr_rrc_UE_CapabilityRequestFilterNR_PDU = -1; /* UE_CapabilityRequestFilterNR */ static int hf_nr_rrc_nr_rrc_UE_MRDC_Capability_PDU = -1; /* UE_MRDC_Capability */ static int hf_nr_rrc_nr_rrc_UE_NR_Capability_PDU = -1; /* UE_NR_Capability */ +static int hf_nr_rrc_nr_rrc_VisitedCellInfoList_r16_PDU = -1; /* VisitedCellInfoList_r16 */ static int hf_nr_rrc_nr_rrc_SL_CBR_r16_PDU = -1; /* SL_CBR_r16 */ static int hf_nr_rrc_SBCCH_SL_BCH_Message_PDU = -1; /* SBCCH_SL_BCH_Message */ static int hf_nr_rrc_SCCH_Message_PDU = -1; /* SCCH_Message */ @@ -81038,6 +81040,16 @@ int dissect_nr_rrc_RadioBearerConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _ offset += 7; offset >>= 3; return offset; } +int dissect_nr_rrc_ReferenceTime_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); + proto_item_set_hidden(prot_ti); + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_nr_rrc_ReferenceTime_r16(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_ReferenceTime_r16_PDU); + offset += 7; offset >>= 3; + return offset; +} int dissect_nr_rrc_TDD_UL_DL_ConfigCommon_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); proto_item_set_hidden(prot_ti); @@ -81148,6 +81160,16 @@ int dissect_nr_rrc_UE_NR_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U offset += 7; offset >>= 3; return offset; } +int dissect_nr_rrc_VisitedCellInfoList_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); + proto_item_set_hidden(prot_ti); + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_nr_rrc_VisitedCellInfoList_r16(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_VisitedCellInfoList_r16_PDU); + offset += 7; offset >>= 3; + return offset; +} int dissect_nr_rrc_SL_CBR_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); proto_item_set_hidden(prot_ti); @@ -81243,6 +81265,18 @@ static int dissect_UECapabilityEnquiry_v1560_IEs_PDU(tvbuff_t *tvb _U_, packet_i /*--- End of included file: packet-nr-rrc-fn.c ---*/ #line 515 "./asn1/nr-rrc/packet-nr-rrc-template.c" +int +dissect_nr_rrc_nr_RLF_Report_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA); + proto_item_set_hidden(prot_ti); + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_nr_rrc_T_nr_RLF_Report_r16(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_BCCH_DL_SCH_Message_PDU); + offset += 7; offset >>= 3; + return offset; +} + void proto_register_nr_rrc(void) { @@ -81424,6 +81458,10 @@ proto_register_nr_rrc(void) { { "RadioBearerConfig", "nr-rrc.RadioBearerConfig_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_nr_rrc_nr_rrc_ReferenceTime_r16_PDU, + { "ReferenceTime-r16", "nr-rrc.ReferenceTime_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_nr_rrc_nr_rrc_TDD_UL_DL_ConfigCommon_PDU, { "TDD-UL-DL-ConfigCommon", "nr-rrc.TDD_UL_DL_ConfigCommon_element", FT_NONE, BASE_NONE, NULL, 0, @@ -81468,6 +81506,10 @@ proto_register_nr_rrc(void) { { "UE-NR-Capability", "nr-rrc.UE_NR_Capability_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_nr_rrc_nr_rrc_VisitedCellInfoList_r16_PDU, + { "VisitedCellInfoList-r16", "nr-rrc.VisitedCellInfoList_r16", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_nr_rrc_nr_rrc_SL_CBR_r16_PDU, { "SL-CBR-r16", "nr-rrc.SL_CBR_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -103302,7 +103344,7 @@ proto_register_nr_rrc(void) { "T_nonCriticalExtension_58", HFILL }}, /*--- End of included file: packet-nr-rrc-hfarr.c ---*/ -#line 523 "./asn1/nr-rrc/packet-nr-rrc-template.c" +#line 535 "./asn1/nr-rrc/packet-nr-rrc-template.c" { &hf_nr_rrc_serialNumber_gs, { "Geographical Scope", "nr-rrc.serialNumber.gs", @@ -105680,7 +105722,7 @@ proto_register_nr_rrc(void) { &ett_nr_rrc_T_nonCriticalExtension_58, /*--- End of included file: packet-nr-rrc-ettarr.c ---*/ -#line 661 "./asn1/nr-rrc/packet-nr-rrc-template.c" +#line 673 "./asn1/nr-rrc/packet-nr-rrc-template.c" &ett_nr_rrc_DedicatedNAS_Message, &ett_nr_rrc_targetRAT_MessageContainer, &ett_nr_rrc_nas_Container, @@ -105768,7 +105810,7 @@ proto_register_nr_rrc(void) { /*--- End of included file: packet-nr-rrc-dis-reg.c ---*/ -#line 728 "./asn1/nr-rrc/packet-nr-rrc-template.c" +#line 740 "./asn1/nr-rrc/packet-nr-rrc-template.c" nr_rrc_etws_cmas_dcs_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal); diff --git a/epan/dissectors/packet-nr-rrc.h b/epan/dissectors/packet-nr-rrc.h index e986184193..e95961b014 100644 --- a/epan/dissectors/packet-nr-rrc.h +++ b/epan/dissectors/packet-nr-rrc.h @@ -57,6 +57,7 @@ int dissect_nr_rrc_MeasGapSharingConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinf int dissect_nr_rrc_MeasResultSCG_Failure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_P_Max_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_RadioBearerConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_nr_rrc_ReferenceTime_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_TDD_UL_DL_ConfigCommon_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_UplinkTxDirectCurrentList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_SupportedBandCombinationListSidelink_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); @@ -68,9 +69,10 @@ int dissect_nr_rrc_UE_CapabilityRequestFilterCommon_PDU(tvbuff_t *tvb _U_, packe int dissect_nr_rrc_UE_CapabilityRequestFilterNR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_UE_MRDC_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_UE_NR_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_nr_rrc_VisitedCellInfoList_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_SL_CBR_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); /*--- End of included file: packet-nr-rrc-exp.h ---*/ #line 15 "./asn1/nr-rrc/packet-nr-rrc-template.h" - +int dissect_nr_rrc_nr_RLF_Report_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); #endif /* PACKET_NR_RRC_H */ diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c index 40b5959716..57eeedde27 100644 --- a/epan/dissectors/packet-s1ap.c +++ b/epan/dissectors/packet-s1ap.c @@ -705,6 +705,7 @@ static int hf_s1ap_MDT_Configuration_PDU = -1; /* MDT_Configuration */ static int hf_s1ap_ManagementBasedMDTAllowed_PDU = -1; /* ManagementBasedMDTAllowed */ static int hf_s1ap_MDTPLMNList_PDU = -1; /* MDTPLMNList */ static int hf_s1ap_PrivacyIndicator_PDU = -1; /* PrivacyIndicator */ +static int hf_s1ap_s1ap_MDTMode_PDU = -1; /* MDTMode */ static int hf_s1ap_MessageIdentifier_PDU = -1; /* MessageIdentifier */ static int hf_s1ap_MobilityInformation_PDU = -1; /* MobilityInformation */ static int hf_s1ap_MMEname_PDU = -1; /* MMEname */ @@ -1519,6 +1520,8 @@ static int ett_s1ap_sSRSSIMeasurement = -1; static int ett_s1ap_quantityConfigNR_R15 = -1; static int ett_s1ap_blackCellsToAddModList = -1; static int ett_s1ap_NB_IoT_RLF_Report_Container = -1; +static int ett_s1ap_MDT_ConfigurationNR = -1; +static int ett_s1ap_IntersystemSONConfigurationTransfer = -1; /*--- Included file: packet-s1ap-ett.c ---*/ #line 1 "./asn1/s1ap/packet-s1ap-ett.c" @@ -1929,7 +1932,7 @@ static gint ett_s1ap_EHRPDCompositeAvailableCapacity = -1; static gint ett_s1ap_EHRPDMultiSectorLoadReportingResponseItem = -1; /*--- End of included file: packet-s1ap-ett.c ---*/ -#line 162 "./asn1/s1ap/packet-s1ap-template.c" +#line 164 "./asn1/s1ap/packet-s1ap-template.c" static expert_field ei_s1ap_number_pages_le15 = EI_INIT; @@ -2189,7 +2192,7 @@ dissect_s1ap_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_T_global(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 218 "./asn1/s1ap/s1ap.cnf" +#line 220 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_object_identifier_str(tvb, offset, actx, tree, hf_index, &s1ap_data->obj_id); @@ -2214,7 +2217,7 @@ static const per_choice_t PrivateIE_ID_choice[] = { static int dissect_s1ap_PrivateIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 214 "./asn1/s1ap/s1ap.cnf" +#line 216 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->obj_id = NULL; @@ -2303,7 +2306,7 @@ static value_string_ext s1ap_ProcedureCode_vals_ext = VALUE_STRING_EXT_INIT(s1ap static int dissect_s1ap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 132 "./asn1/s1ap/s1ap.cnf" +#line 134 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 255U, &s1ap_data->procedure_code, FALSE); @@ -2317,7 +2320,7 @@ dissect_s1ap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_s1ap_ProtocolExtensionID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 126 "./asn1/s1ap/s1ap.cnf" +#line 128 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 65535U, &s1ap_data->protocol_extension_id, FALSE); @@ -2663,7 +2666,7 @@ static value_string_ext s1ap_ProtocolIE_ID_vals_ext = VALUE_STRING_EXT_INIT(s1ap static int dissect_s1ap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 108 "./asn1/s1ap/s1ap.cnf" +#line 110 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 65535U, &s1ap_data->protocol_ie_id, FALSE); @@ -2671,7 +2674,7 @@ dissect_s1ap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ -#line 112 "./asn1/s1ap/s1ap.cnf" +#line 114 "./asn1/s1ap/s1ap.cnf" if (tree) { proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str_ext(s1ap_data->protocol_ie_id, &s1ap_ProtocolIE_ID_vals_ext, "unknown (%d)")); @@ -2752,7 +2755,7 @@ static const per_sequence_t ProtocolIE_ContainerList_sequence_of[1] = { static int dissect_s1ap_ProtocolIE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 159 "./asn1/s1ap/s1ap.cnf" +#line 161 "./asn1/s1ap/s1ap.cnf" static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = { { "lowerBound", ASN1_PAR_INTEGER }, { "upperBound", ASN1_PAR_INTEGER }, @@ -2810,7 +2813,7 @@ dissect_s1ap_ProtocolExtensionContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_s1ap_T_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 222 "./asn1/s1ap/s1ap.cnf" +#line 224 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); if (s1ap_data->obj_id) { offset = call_per_oid_callback(s1ap_data->obj_id, tvb, actx->pinfo, tree, offset, actx, hf_index); @@ -2861,7 +2864,7 @@ dissect_s1ap_PrivateIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 235 "./asn1/s1ap/s1ap.cnf" +#line 237 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); @@ -2888,7 +2891,7 @@ dissect_s1ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_MME_Group_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 967 "./asn1/s1ap/s1ap.cnf" +#line 969 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, ¶meter_tvb); @@ -2906,7 +2909,7 @@ dissect_s1ap_MME_Group_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_MME_Code(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 958 "./asn1/s1ap/s1ap.cnf" +#line 960 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 1, 1, FALSE, ¶meter_tvb); @@ -2941,7 +2944,7 @@ dissect_s1ap_GUMMEI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_s1ap_M_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1296 "./asn1/s1ap/s1ap.cnf" +#line 1298 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 4, 4, FALSE, ¶meter_tvb); @@ -3001,7 +3004,7 @@ dissect_s1ap_AerialUEsubscriptionInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2522 "./asn1/s1ap/s1ap.cnf" +#line 2542 "./asn1/s1ap/s1ap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 28, 28, FALSE, NULL, 0, &cell_id_tvb, NULL); @@ -3064,7 +3067,7 @@ dissect_s1ap_CellBasedMDT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1254 "./asn1/s1ap/s1ap.cnf" +#line 1256 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, @@ -3132,7 +3135,7 @@ static const per_sequence_t TAI_sequence[] = { static int dissect_s1ap_TAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1377 "./asn1/s1ap/s1ap.cnf" +#line 1379 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->tai = wmem_new0(wmem_packet_scope(), struct s1ap_tai); @@ -3432,7 +3435,7 @@ dissect_s1ap_AllocationAndRetentionPriority(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_s1ap_CELevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 744 "./asn1/s1ap/s1ap.cnf" +#line 746 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -3871,7 +3874,7 @@ dissect_s1ap_BluetoothMeasConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_BluetoothName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1407 "./asn1/s1ap/s1ap.cnf" +#line 1409 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 1, 248, FALSE, ¶meter_tvb); @@ -4357,7 +4360,7 @@ static value_string_ext s1ap_CauseRadioNetwork_vals_ext = VALUE_STRING_EXT_INIT( static int dissect_s1ap_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2493 "./asn1/s1ap/s1ap.cnf" +#line 2513 "./asn1/s1ap/s1ap.cnf" guint32 value; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 36, &value, TRUE, 4, NULL); @@ -4379,7 +4382,7 @@ const value_string s1ap_CauseTransport_vals[] = { static int dissect_s1ap_CauseTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2498 "./asn1/s1ap/s1ap.cnf" +#line 2518 "./asn1/s1ap/s1ap.cnf" guint32 value; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 2, &value, TRUE, 0, NULL); @@ -4404,7 +4407,7 @@ const value_string s1ap_CauseNas_vals[] = { static int dissect_s1ap_CauseNas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2503 "./asn1/s1ap/s1ap.cnf" +#line 2523 "./asn1/s1ap/s1ap.cnf" guint32 value; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 4, &value, TRUE, 1, NULL); @@ -4431,7 +4434,7 @@ const value_string s1ap_CauseProtocol_vals[] = { static int dissect_s1ap_CauseProtocol(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2508 "./asn1/s1ap/s1ap.cnf" +#line 2528 "./asn1/s1ap/s1ap.cnf" guint32 value; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 7, &value, TRUE, 0, NULL); @@ -4457,7 +4460,7 @@ const value_string s1ap_CauseMisc_vals[] = { static int dissect_s1ap_CauseMisc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2513 "./asn1/s1ap/s1ap.cnf" +#line 2533 "./asn1/s1ap/s1ap.cnf" guint32 value; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6, &value, TRUE, 0, NULL); @@ -4531,7 +4534,7 @@ dissect_s1ap_CE_mode_B_SupportIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_s1ap_Cdma2000PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 678 "./asn1/s1ap/s1ap.cnf" +#line 680 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -4573,7 +4576,7 @@ dissect_s1ap_Cdma2000RATType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_Cdma2000SectorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 693 "./asn1/s1ap/s1ap.cnf" +#line 695 "./asn1/s1ap/s1ap.cnf" /* 9.2.1.25 * This IE is set to CDMA2000 Reference Cell ID * corresponding to the HRPD/1xRTT sector under @@ -4723,7 +4726,7 @@ dissect_s1ap_CellType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_s1ap_LAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1269 "./asn1/s1ap/s1ap.cnf" +#line 1271 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, ¶meter_tvb); @@ -4751,7 +4754,7 @@ dissect_s1ap_CI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_t static int dissect_s1ap_RAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1278 "./asn1/s1ap/s1ap.cnf" +#line 1280 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 1, 1, FALSE, ¶meter_tvb); @@ -4880,7 +4883,7 @@ static const per_sequence_t SupportedTAs_Item_sequence[] = { static int dissect_s1ap_SupportedTAs_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1327 "./asn1/s1ap/s1ap.cnf" +#line 1329 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); if (!PINFO_FD_VISITED(actx->pinfo) && @@ -4895,7 +4898,7 @@ dissect_s1ap_SupportedTAs_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_s1ap_SupportedTAs_Item, SupportedTAs_Item_sequence); -#line 1338 "./asn1/s1ap/s1ap.cnf" +#line 1340 "./asn1/s1ap/s1ap.cnf" s1ap_data->supported_ta = NULL; @@ -5424,7 +5427,7 @@ dissect_s1ap_DAPSResponseInfoItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_DataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1089 "./asn1/s1ap/s1ap.cnf" +#line 1091 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -5779,7 +5782,7 @@ dissect_s1ap_ENB_StatusTransfer_TransparentContainer(tvbuff_t *tvb _U_, int offs static int dissect_s1ap_ENB_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1356 "./asn1/s1ap/s1ap.cnf" +#line 1358 "./asn1/s1ap/s1ap.cnf" guint32 enb_ue_s1ap_id; struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -5802,7 +5805,7 @@ dissect_s1ap_ENB_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 255 "./asn1/s1ap/s1ap.cnf" +#line 257 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; int length; gboolean is_ascii; @@ -5829,7 +5832,7 @@ dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 308 "./asn1/s1ap/s1ap.cnf" +#line 310 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; proto_tree *subtree; gint tvb_len; @@ -5879,7 +5882,7 @@ dissect_s1ap_ENBX2TLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_EncryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 974 "./asn1/s1ap/s1ap.cnf" +#line 976 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -5937,7 +5940,7 @@ dissect_s1ap_EN_DCSONengNBIdentification(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_s1ap_FiveGSTAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1287 "./asn1/s1ap/s1ap.cnf" +#line 1289 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 3, 3, FALSE, ¶meter_tvb); @@ -6323,7 +6326,7 @@ dissect_s1ap_E_RABUsageReportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_T_startTimestamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1181 "./asn1/s1ap/s1ap.cnf" +#line 1183 "./asn1/s1ap/s1ap.cnf" tvbuff_t *timestamp_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, ×tamp_tvb); @@ -6331,7 +6334,7 @@ dissect_s1ap_T_startTimestamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act -#line 1185 "./asn1/s1ap/s1ap.cnf" +#line 1187 "./asn1/s1ap/s1ap.cnf" if (timestamp_tvb) { proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0)); } @@ -6344,7 +6347,7 @@ dissect_s1ap_T_startTimestamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_s1ap_T_endTimestamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1190 "./asn1/s1ap/s1ap.cnf" +#line 1192 "./asn1/s1ap/s1ap.cnf" tvbuff_t *timestamp_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4, 4, FALSE, ×tamp_tvb); @@ -6352,7 +6355,7 @@ dissect_s1ap_T_endTimestamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx -#line 1194 "./asn1/s1ap/s1ap.cnf" +#line 1196 "./asn1/s1ap/s1ap.cnf" if (timestamp_tvb) { proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0)); } @@ -6753,7 +6756,7 @@ static const value_string s1ap_HandoverType_vals[] = { static int dissect_s1ap_HandoverType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 358 "./asn1/s1ap/s1ap.cnf" +#line 360 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 5, &s1ap_data->handover_type_value, TRUE, 2, NULL); @@ -6778,7 +6781,7 @@ dissect_s1ap_Masked_IMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_s1ap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1134 "./asn1/s1ap/s1ap.cnf" +#line 1136 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -6965,7 +6968,7 @@ dissect_s1ap_ImmediateMDT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_IMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1303 "./asn1/s1ap/s1ap.cnf" +#line 1305 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 3, 8, FALSE, ¶meter_tvb); @@ -7029,7 +7032,7 @@ dissect_s1ap_InformationOnRecommendedCellsAndENBsForPaging(tvbuff_t *tvb _U_, in static int dissect_s1ap_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 989 "./asn1/s1ap/s1ap.cnf" +#line 991 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -7055,7 +7058,7 @@ dissect_s1ap_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 876 "./asn1/s1ap/s1ap.cnf" +#line 878 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -7152,7 +7155,7 @@ dissect_s1ap_INTEGER_1_maxRS_IndexCellQual(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_T_sMTC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 908 "./asn1/s1ap/s1ap.cnf" +#line 910 "./asn1/s1ap/s1ap.cnf" tvbuff_t *ssb_mtc_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &ssb_mtc_tvb); @@ -7171,7 +7174,7 @@ dissect_s1ap_T_sMTC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_s1ap_T_threshRS_Index_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 916 "./asn1/s1ap/s1ap.cnf" +#line 918 "./asn1/s1ap/s1ap.cnf" tvbuff_t *threshold_list_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &threshold_list_tvb); @@ -7190,7 +7193,7 @@ dissect_s1ap_T_threshRS_Index_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_T_sSBToMeasure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 924 "./asn1/s1ap/s1ap.cnf" +#line 926 "./asn1/s1ap/s1ap.cnf" tvbuff_t *ssb_to_meas_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &ssb_to_meas_tvb); @@ -7209,7 +7212,7 @@ dissect_s1ap_T_sSBToMeasure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_T_sSRSSIMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 932 "./asn1/s1ap/s1ap.cnf" +#line 934 "./asn1/s1ap/s1ap.cnf" tvbuff_t *ss_rssi_meas_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &ss_rssi_meas_tvb); @@ -7228,7 +7231,7 @@ dissect_s1ap_T_sSRSSIMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_T_quantityConfigNR_R15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 940 "./asn1/s1ap/s1ap.cnf" +#line 942 "./asn1/s1ap/s1ap.cnf" tvbuff_t *quantity_config_nr_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &quantity_config_nr_tvb); @@ -7247,7 +7250,7 @@ dissect_s1ap_T_quantityConfigNR_R15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_s1ap_T_blackCellsToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 948 "./asn1/s1ap/s1ap.cnf" +#line 950 "./asn1/s1ap/s1ap.cnf" tvbuff_t *black_cells_list_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &black_cells_list_tvb); @@ -7338,8 +7341,18 @@ dissect_s1ap_IntersystemMeasurementConfiguration(tvbuff_t *tvb _U_, int offset _ static int dissect_s1ap_IntersystemSONConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1444 "./asn1/s1ap/s1ap.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, NULL); + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_IntersystemSONConfigurationTransfer); + dissect_ngap_SONConfigurationTransfer_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + + return offset; } @@ -7451,7 +7464,7 @@ dissect_s1ap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1038 "./asn1/s1ap/s1ap.cnf" +#line 1040 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -7500,7 +7513,7 @@ dissect_s1ap_LastVisitedGERANCellInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_LastVisitedNGRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1020 "./asn1/s1ap/s1ap.cnf" +#line 1022 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -7555,7 +7568,7 @@ dissect_s1ap_LastVisitedCell_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_LPPa_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 299 "./asn1/s1ap/s1ap.cnf" +#line 301 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; @@ -7575,7 +7588,7 @@ dissect_s1ap_LPPa_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_s1ap_LHN_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1169 "./asn1/s1ap/s1ap.cnf" +#line 1171 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 32, 256, FALSE, ¶meter_tvb); @@ -7995,7 +8008,7 @@ dissect_s1ap_MDT_Activation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_MDT_Location_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1153 "./asn1/s1ap/s1ap.cnf" +#line 1155 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -8115,7 +8128,7 @@ dissect_s1ap_PrivacyIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1059 "./asn1/s1ap/s1ap.cnf" +#line 1061 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -8143,7 +8156,7 @@ dissect_s1ap_MobilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_MMEname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 271 "./asn1/s1ap/s1ap.cnf" +#line 273 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; int length; gboolean is_ascii; @@ -8207,7 +8220,7 @@ dissect_s1ap_MMERelaySupportIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_s1ap_MME_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1368 "./asn1/s1ap/s1ap.cnf" +#line 1370 "./asn1/s1ap/s1ap.cnf" guint32 mme_ue_s1ap_id; offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 4294967295U, &mme_ue_s1ap_id, FALSE); @@ -8227,7 +8240,7 @@ dissect_s1ap_MME_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_MSClassmark2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1112 "./asn1/s1ap/s1ap.cnf" +#line 1114 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); @@ -8246,7 +8259,7 @@ dissect_s1ap_MSClassmark2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_MSClassmark3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1120 "./asn1/s1ap/s1ap.cnf" +#line 1122 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); @@ -8316,8 +8329,18 @@ dissect_s1ap_MutingPatternInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_s1ap_MDT_ConfigurationNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 1435 "./asn1/s1ap/s1ap.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, NULL); + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_MDT_ConfigurationNR); + dissect_ngap_MDT_Configuration_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + + return offset; } @@ -8326,7 +8349,7 @@ dissect_s1ap_MDT_ConfigurationNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 290 "./asn1/s1ap/s1ap.cnf" +#line 292 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb=NULL; @@ -8346,7 +8369,7 @@ tvbuff_t *parameter_tvb=NULL; static int dissect_s1ap_NASSecurityParametersfromE_UTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1311 "./asn1/s1ap/s1ap.cnf" +#line 1313 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); @@ -8365,7 +8388,7 @@ dissect_s1ap_NASSecurityParametersfromE_UTRAN(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_NASSecurityParameterstoE_UTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1319 "./asn1/s1ap/s1ap.cnf" +#line 1321 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); @@ -8496,7 +8519,7 @@ dissect_s1ap_NB_IoT_Paging_eDRXInformation(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_NB_IoT_RLF_Report_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 813 "./asn1/s1ap/s1ap.cnf" +#line 815 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -8576,7 +8599,7 @@ dissect_s1ap_NR_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_s1ap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1208 "./asn1/s1ap/s1ap.cnf" +#line 1210 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -8602,7 +8625,7 @@ dissect_s1ap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_s1ap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1223 "./asn1/s1ap/s1ap.cnf" +#line 1225 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); @@ -9049,7 +9072,7 @@ dissect_s1ap_PendingDataIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_Port_Number(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 339 "./asn1/s1ap/s1ap.cnf" +#line 341 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, ¶meter_tvb); @@ -9242,7 +9265,7 @@ static const value_string s1ap_RAT_Type_vals[] = { static int dissect_s1ap_RAT_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1341 "./asn1/s1ap/s1ap.cnf" +#line 1343 "./asn1/s1ap/s1ap.cnf" guint32 rat_type = 0xffffffff; struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, @@ -9314,7 +9337,7 @@ dissect_s1ap_RequestTypeAdditionalInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_s1ap_RIMInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 662 "./asn1/s1ap/s1ap.cnf" +#line 664 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -9429,7 +9452,7 @@ dissect_s1ap_RepetitionPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_s1ap_UE_RLF_Report_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 775 "./asn1/s1ap/s1ap.cnf" +#line 777 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -9458,7 +9481,7 @@ dissect_s1ap_UE_RLF_Report_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_s1ap_UE_RLF_Report_Container_for_extended_bands(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 795 "./asn1/s1ap/s1ap.cnf" +#line 797 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -9503,7 +9526,7 @@ dissect_s1ap_RLFReportInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_RRC_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 523 "./asn1/s1ap/s1ap.cnf" +#line 525 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; @@ -9709,7 +9732,7 @@ dissect_s1ap_SecondaryRATDataUsageReportItem(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_SerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1066 "./asn1/s1ap/s1ap.cnf" +#line 1068 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -9842,7 +9865,7 @@ dissect_s1ap_SynchronisationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_s1ap_Source_ToTarget_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 391 "./asn1/s1ap/s1ap.cnf" +#line 393 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -9957,7 +9980,7 @@ static const value_string s1ap_SRVCCHOIndication_vals[] = { static int dissect_s1ap_SRVCCHOIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 362 "./asn1/s1ap/s1ap.cnf" +#line 364 "./asn1/s1ap/s1ap.cnf" guint32 srvcc_ho_ind; struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, @@ -10392,7 +10415,7 @@ dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer(tvbuff_t *tvb _U_, int o static int dissect_s1ap_Target_ToSource_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 460 "./asn1/s1ap/s1ap.cnf" +#line 462 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -10495,7 +10518,7 @@ dissect_s1ap_Time_UE_StayedInCell_EnhancedGranularity(tvbuff_t *tvb _U_, int off static int dissect_s1ap_TimeSinceSecondaryNodeRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1010 "./asn1/s1ap/s1ap.cnf" +#line 1012 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 4, 4, FALSE, ¶meter_tvb); @@ -10528,7 +10551,7 @@ dissect_s1ap_TransportInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_E_UTRAN_Trace_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 865 "./asn1/s1ap/s1ap.cnf" +#line 867 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -10764,7 +10787,7 @@ dissect_s1ap_UEIdentityIndexValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_s1ap_UE_HistoryInformationFromTheUE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 604 "./asn1/s1ap/s1ap.cnf" +#line 606 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -10816,7 +10839,7 @@ dissect_s1ap_UEPagingID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_UERadioCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 623 "./asn1/s1ap/s1ap.cnf" +#line 625 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -10858,7 +10881,7 @@ dissect_s1ap_UERadioCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_UERadioCapabilityForPaging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 713 "./asn1/s1ap/s1ap.cnf" +#line 715 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; @@ -11031,7 +11054,7 @@ dissect_s1ap_UEUserPlaneCIoTSupportIndicator(tvbuff_t *tvb _U_, int offset _U_, static int dissect_s1ap_UE_Application_Layer_Measurement_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1238 "./asn1/s1ap/s1ap.cnf" +#line 1240 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); @@ -11122,7 +11145,7 @@ dissect_s1ap_WarningAreaList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_WarningType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1079 "./asn1/s1ap/s1ap.cnf" +#line 1081 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 2, 2, FALSE, ¶meter_tvb); @@ -11153,7 +11176,7 @@ dissect_s1ap_WarningSecurityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_WarningMessageContents(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1103 "./asn1/s1ap/s1ap.cnf" +#line 1105 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 1, 9600, FALSE, ¶meter_tvb); @@ -11188,7 +11211,7 @@ dissect_s1ap_WLANMeasConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_WLANName(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1415 "./asn1/s1ap/s1ap.cnf" +#line 1417 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 1, 32, FALSE, ¶meter_tvb); @@ -11338,7 +11361,7 @@ dissect_s1ap_ENBIndirectX2TransportLayerAddresses(tvbuff_t *tvb _U_, int offset static int dissect_s1ap_E_RAB_IE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 186 "./asn1/s1ap/s1ap.cnf" +#line 188 "./asn1/s1ap/s1ap.cnf" asn1_stack_frame_push(actx, "ProtocolIE-ContainerList"); asn1_param_push_integer(actx, 1); asn1_param_push_integer(actx, maxnoofE_RABs); @@ -11358,7 +11381,7 @@ static const per_sequence_t HandoverRequired_sequence[] = { static int dissect_s1ap_HandoverRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 370 "./asn1/s1ap/s1ap.cnf" +#line 372 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->handover_type_value = 0xff; s1ap_data->srvcc_ho_cs_only = FALSE; @@ -11378,7 +11401,7 @@ static const per_sequence_t HandoverCommand_sequence[] = { static int dissect_s1ap_HandoverCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 374 "./asn1/s1ap/s1ap.cnf" +#line 376 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->handover_type_value = 0xff; col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCommand"); @@ -11425,7 +11448,7 @@ static const per_sequence_t HandoverPreparationFailure_sequence[] = { static int dissect_s1ap_HandoverPreparationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2297 "./asn1/s1ap/s1ap.cnf" +#line 2317 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11442,7 +11465,7 @@ static const per_sequence_t HandoverRequest_sequence[] = { static int dissect_s1ap_HandoverRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 377 "./asn1/s1ap/s1ap.cnf" +#line 379 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->handover_type_value = 0xff; col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequest"); @@ -11488,7 +11511,7 @@ static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { static int dissect_s1ap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 380 "./asn1/s1ap/s1ap.cnf" +#line 382 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->handover_type_value = 0xff; @@ -11563,7 +11586,7 @@ static const per_sequence_t HandoverFailure_sequence[] = { static int dissect_s1ap_HandoverFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2303 "./asn1/s1ap/s1ap.cnf" +#line 2323 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11580,7 +11603,7 @@ static const per_sequence_t HandoverNotify_sequence[] = { static int dissect_s1ap_HandoverNotify(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2305 "./asn1/s1ap/s1ap.cnf" +#line 2325 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverNotify"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11597,7 +11620,7 @@ static const per_sequence_t PathSwitchRequest_sequence[] = { static int dissect_s1ap_PathSwitchRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2307 "./asn1/s1ap/s1ap.cnf" +#line 2327 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11640,7 +11663,7 @@ static const per_sequence_t PathSwitchRequestAcknowledge_sequence[] = { static int dissect_s1ap_PathSwitchRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2309 "./asn1/s1ap/s1ap.cnf" +#line 2329 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11683,7 +11706,7 @@ static const per_sequence_t PathSwitchRequestFailure_sequence[] = { static int dissect_s1ap_PathSwitchRequestFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2311 "./asn1/s1ap/s1ap.cnf" +#line 2331 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11700,7 +11723,7 @@ static const per_sequence_t HandoverCancel_sequence[] = { static int dissect_s1ap_HandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2313 "./asn1/s1ap/s1ap.cnf" +#line 2333 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancel"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11717,7 +11740,7 @@ static const per_sequence_t HandoverCancelAcknowledge_sequence[] = { static int dissect_s1ap_HandoverCancelAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2315 "./asn1/s1ap/s1ap.cnf" +#line 2335 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancelAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11734,7 +11757,7 @@ static const per_sequence_t HandoverSuccess_sequence[] = { static int dissect_s1ap_HandoverSuccess(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2483 "./asn1/s1ap/s1ap.cnf" +#line 2503 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverSuccess"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11751,7 +11774,7 @@ static const per_sequence_t ENBEarlyStatusTransfer_sequence[] = { static int dissect_s1ap_ENBEarlyStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2485 "./asn1/s1ap/s1ap.cnf" +#line 2505 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBEarlyStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11768,7 +11791,7 @@ static const per_sequence_t MMEEarlyStatusTransfer_sequence[] = { static int dissect_s1ap_MMEEarlyStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2487 "./asn1/s1ap/s1ap.cnf" +#line 2507 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEEarlyStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11785,7 +11808,7 @@ static const per_sequence_t E_RABSetupRequest_sequence[] = { static int dissect_s1ap_E_RABSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2317 "./asn1/s1ap/s1ap.cnf" +#line 2337 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABSetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11835,7 +11858,7 @@ static const per_sequence_t E_RABSetupResponse_sequence[] = { static int dissect_s1ap_E_RABSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2319 "./asn1/s1ap/s1ap.cnf" +#line 2339 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABSetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11883,7 +11906,7 @@ static const per_sequence_t E_RABModifyRequest_sequence[] = { static int dissect_s1ap_E_RABModifyRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2321 "./asn1/s1ap/s1ap.cnf" +#line 2341 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModifyRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11931,7 +11954,7 @@ static const per_sequence_t E_RABModifyResponse_sequence[] = { static int dissect_s1ap_E_RABModifyResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2323 "./asn1/s1ap/s1ap.cnf" +#line 2343 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModifyResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11977,7 +12000,7 @@ static const per_sequence_t E_RABReleaseCommand_sequence[] = { static int dissect_s1ap_E_RABReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2325 "./asn1/s1ap/s1ap.cnf" +#line 2345 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseCommand"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -11994,7 +12017,7 @@ static const per_sequence_t E_RABReleaseResponse_sequence[] = { static int dissect_s1ap_E_RABReleaseResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2327 "./asn1/s1ap/s1ap.cnf" +#line 2347 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12040,7 +12063,7 @@ static const per_sequence_t E_RABReleaseIndication_sequence[] = { static int dissect_s1ap_E_RABReleaseIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2329 "./asn1/s1ap/s1ap.cnf" +#line 2349 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12057,7 +12080,7 @@ static const per_sequence_t InitialContextSetupRequest_sequence[] = { static int dissect_s1ap_InitialContextSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2331 "./asn1/s1ap/s1ap.cnf" +#line 2351 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12107,7 +12130,7 @@ static const per_sequence_t InitialContextSetupResponse_sequence[] = { static int dissect_s1ap_InitialContextSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2333 "./asn1/s1ap/s1ap.cnf" +#line 2353 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12155,7 +12178,7 @@ static const per_sequence_t InitialContextSetupFailure_sequence[] = { static int dissect_s1ap_InitialContextSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2335 "./asn1/s1ap/s1ap.cnf" +#line 2355 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12172,7 +12195,7 @@ static const per_sequence_t Paging_sequence[] = { static int dissect_s1ap_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2337 "./asn1/s1ap/s1ap.cnf" +#line 2357 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12218,7 +12241,7 @@ static const per_sequence_t UEContextReleaseRequest_sequence[] = { static int dissect_s1ap_UEContextReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2339 "./asn1/s1ap/s1ap.cnf" +#line 2359 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12235,7 +12258,7 @@ static const per_sequence_t UEContextReleaseCommand_sequence[] = { static int dissect_s1ap_UEContextReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2341 "./asn1/s1ap/s1ap.cnf" +#line 2361 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseCommand"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12252,7 +12275,7 @@ static const per_sequence_t UEContextReleaseComplete_sequence[] = { static int dissect_s1ap_UEContextReleaseComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2343 "./asn1/s1ap/s1ap.cnf" +#line 2363 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseComplete"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12269,7 +12292,7 @@ static const per_sequence_t UEContextModificationRequest_sequence[] = { static int dissect_s1ap_UEContextModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2345 "./asn1/s1ap/s1ap.cnf" +#line 2365 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12286,7 +12309,7 @@ static const per_sequence_t UEContextModificationResponse_sequence[] = { static int dissect_s1ap_UEContextModificationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2347 "./asn1/s1ap/s1ap.cnf" +#line 2367 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12303,7 +12326,7 @@ static const per_sequence_t UEContextModificationFailure_sequence[] = { static int dissect_s1ap_UEContextModificationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2349 "./asn1/s1ap/s1ap.cnf" +#line 2369 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12320,7 +12343,7 @@ static const per_sequence_t UERadioCapabilityMatchRequest_sequence[] = { static int dissect_s1ap_UERadioCapabilityMatchRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2351 "./asn1/s1ap/s1ap.cnf" +#line 2371 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityMatchRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12337,7 +12360,7 @@ static const per_sequence_t UERadioCapabilityMatchResponse_sequence[] = { static int dissect_s1ap_UERadioCapabilityMatchResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2353 "./asn1/s1ap/s1ap.cnf" +#line 2373 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityMatchResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12354,7 +12377,7 @@ static const per_sequence_t DownlinkNASTransport_sequence[] = { static int dissect_s1ap_DownlinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 350 "./asn1/s1ap/s1ap.cnf" +#line 352 "./asn1/s1ap/s1ap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_DL; @@ -12374,7 +12397,7 @@ static const per_sequence_t InitialUEMessage_sequence[] = { static int dissect_s1ap_InitialUEMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 346 "./asn1/s1ap/s1ap.cnf" +#line 348 "./asn1/s1ap/s1ap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_UL; @@ -12394,7 +12417,7 @@ static const per_sequence_t UplinkNASTransport_sequence[] = { static int dissect_s1ap_UplinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 354 "./asn1/s1ap/s1ap.cnf" +#line 356 "./asn1/s1ap/s1ap.cnf" /* Set the direction of the message */ actx->pinfo->link_dir=P2P_DIR_UL; @@ -12414,7 +12437,7 @@ static const per_sequence_t NASNonDeliveryIndication_sequence[] = { static int dissect_s1ap_NASNonDeliveryIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2361 "./asn1/s1ap/s1ap.cnf" +#line 2381 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NASNonDeliveryIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12431,7 +12454,7 @@ static const per_sequence_t RerouteNASRequest_sequence[] = { static int dissect_s1ap_RerouteNASRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2363 "./asn1/s1ap/s1ap.cnf" +#line 2383 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RerouteNASRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12444,7 +12467,7 @@ dissect_s1ap_RerouteNASRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_S1_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 854 "./asn1/s1ap/s1ap.cnf" +#line 856 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -12470,7 +12493,7 @@ static const per_sequence_t NASDeliveryIndication_sequence[] = { static int dissect_s1ap_NASDeliveryIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2467 "./asn1/s1ap/s1ap.cnf" +#line 2487 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NASDeliveryIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12487,7 +12510,7 @@ static const per_sequence_t Reset_sequence[] = { static int dissect_s1ap_Reset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2365 "./asn1/s1ap/s1ap.cnf" +#line 2385 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Reset"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12555,7 +12578,7 @@ static const per_sequence_t ResetAcknowledge_sequence[] = { static int dissect_s1ap_ResetAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2367 "./asn1/s1ap/s1ap.cnf" +#line 2387 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12586,7 +12609,7 @@ static const per_sequence_t ErrorIndication_sequence[] = { static int dissect_s1ap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2369 "./asn1/s1ap/s1ap.cnf" +#line 2389 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12603,7 +12626,7 @@ static const per_sequence_t S1SetupRequest_sequence[] = { static int dissect_s1ap_S1SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2371 "./asn1/s1ap/s1ap.cnf" +#line 2391 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12620,7 +12643,7 @@ static const per_sequence_t S1SetupResponse_sequence[] = { static int dissect_s1ap_S1SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2373 "./asn1/s1ap/s1ap.cnf" +#line 2393 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12637,7 +12660,7 @@ static const per_sequence_t S1SetupFailure_sequence[] = { static int dissect_s1ap_S1SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2375 "./asn1/s1ap/s1ap.cnf" +#line 2395 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12654,7 +12677,7 @@ static const per_sequence_t ENBConfigurationUpdate_sequence[] = { static int dissect_s1ap_ENBConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2377 "./asn1/s1ap/s1ap.cnf" +#line 2397 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12671,7 +12694,7 @@ static const per_sequence_t ENBConfigurationUpdateAcknowledge_sequence[] = { static int dissect_s1ap_ENBConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2379 "./asn1/s1ap/s1ap.cnf" +#line 2399 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12688,7 +12711,7 @@ static const per_sequence_t ENBConfigurationUpdateFailure_sequence[] = { static int dissect_s1ap_ENBConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2381 "./asn1/s1ap/s1ap.cnf" +#line 2401 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12705,7 +12728,7 @@ static const per_sequence_t MMEConfigurationUpdate_sequence[] = { static int dissect_s1ap_MMEConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2383 "./asn1/s1ap/s1ap.cnf" +#line 2403 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12722,7 +12745,7 @@ static const per_sequence_t MMEConfigurationUpdateAcknowledge_sequence[] = { static int dissect_s1ap_MMEConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2385 "./asn1/s1ap/s1ap.cnf" +#line 2405 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdateAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12739,7 +12762,7 @@ static const per_sequence_t MMEConfigurationUpdateFailure_sequence[] = { static int dissect_s1ap_MMEConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2387 "./asn1/s1ap/s1ap.cnf" +#line 2407 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdateFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12756,7 +12779,7 @@ static const per_sequence_t DownlinkS1cdma2000tunnelling_sequence[] = { static int dissect_s1ap_DownlinkS1cdma2000tunnelling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2389 "./asn1/s1ap/s1ap.cnf" +#line 2409 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkS1cdma2000tunnelling"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12773,7 +12796,7 @@ static const per_sequence_t UplinkS1cdma2000tunnelling_sequence[] = { static int dissect_s1ap_UplinkS1cdma2000tunnelling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2391 "./asn1/s1ap/s1ap.cnf" +#line 2411 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkS1cdma2000tunnelling"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12790,7 +12813,7 @@ static const per_sequence_t UECapabilityInfoIndication_sequence[] = { static int dissect_s1ap_UECapabilityInfoIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2393 "./asn1/s1ap/s1ap.cnf" +#line 2413 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityInfoIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12807,7 +12830,7 @@ static const per_sequence_t ENBStatusTransfer_sequence[] = { static int dissect_s1ap_ENBStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2395 "./asn1/s1ap/s1ap.cnf" +#line 2415 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12824,7 +12847,7 @@ static const per_sequence_t MMEStatusTransfer_sequence[] = { static int dissect_s1ap_MMEStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2397 "./asn1/s1ap/s1ap.cnf" +#line 2417 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12841,7 +12864,7 @@ static const per_sequence_t TraceStart_sequence[] = { static int dissect_s1ap_TraceStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2399 "./asn1/s1ap/s1ap.cnf" +#line 2419 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceStart"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12858,7 +12881,7 @@ static const per_sequence_t TraceFailureIndication_sequence[] = { static int dissect_s1ap_TraceFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2401 "./asn1/s1ap/s1ap.cnf" +#line 2421 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceFailureIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12875,7 +12898,7 @@ static const per_sequence_t DeactivateTrace_sequence[] = { static int dissect_s1ap_DeactivateTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2403 "./asn1/s1ap/s1ap.cnf" +#line 2423 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12892,7 +12915,7 @@ static const per_sequence_t CellTrafficTrace_sequence[] = { static int dissect_s1ap_CellTrafficTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2405 "./asn1/s1ap/s1ap.cnf" +#line 2425 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12909,7 +12932,7 @@ static const per_sequence_t LocationReportingControl_sequence[] = { static int dissect_s1ap_LocationReportingControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2407 "./asn1/s1ap/s1ap.cnf" +#line 2427 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingControl"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12926,7 +12949,7 @@ static const per_sequence_t LocationReportingFailureIndication_sequence[] = { static int dissect_s1ap_LocationReportingFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2409 "./asn1/s1ap/s1ap.cnf" +#line 2429 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingFailureIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12943,7 +12966,7 @@ static const per_sequence_t LocationReport_sequence[] = { static int dissect_s1ap_LocationReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2411 "./asn1/s1ap/s1ap.cnf" +#line 2431 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12960,7 +12983,7 @@ static const per_sequence_t OverloadStart_sequence[] = { static int dissect_s1ap_OverloadStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2413 "./asn1/s1ap/s1ap.cnf" +#line 2433 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStart"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12977,7 +13000,7 @@ static const per_sequence_t OverloadStop_sequence[] = { static int dissect_s1ap_OverloadStop(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2415 "./asn1/s1ap/s1ap.cnf" +#line 2435 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStop"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12994,7 +13017,7 @@ static const per_sequence_t WriteReplaceWarningRequest_sequence[] = { static int dissect_s1ap_WriteReplaceWarningRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2417 "./asn1/s1ap/s1ap.cnf" +#line 2437 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13011,7 +13034,7 @@ static const per_sequence_t WriteReplaceWarningResponse_sequence[] = { static int dissect_s1ap_WriteReplaceWarningResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2419 "./asn1/s1ap/s1ap.cnf" +#line 2439 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13028,7 +13051,7 @@ static const per_sequence_t ENBDirectInformationTransfer_sequence[] = { static int dissect_s1ap_ENBDirectInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2421 "./asn1/s1ap/s1ap.cnf" +#line 2441 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBDirectInformationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13065,7 +13088,7 @@ static const per_sequence_t MMEDirectInformationTransfer_sequence[] = { static int dissect_s1ap_MMEDirectInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2423 "./asn1/s1ap/s1ap.cnf" +#line 2443 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEDirectInformationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13082,7 +13105,7 @@ static const per_sequence_t ENBConfigurationTransfer_sequence[] = { static int dissect_s1ap_ENBConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2425 "./asn1/s1ap/s1ap.cnf" +#line 2445 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13099,7 +13122,7 @@ static const per_sequence_t MMEConfigurationTransfer_sequence[] = { static int dissect_s1ap_MMEConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2427 "./asn1/s1ap/s1ap.cnf" +#line 2447 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13116,7 +13139,7 @@ static const per_sequence_t PrivateMessage_sequence[] = { static int dissect_s1ap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2429 "./asn1/s1ap/s1ap.cnf" +#line 2449 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13133,7 +13156,7 @@ static const per_sequence_t KillRequest_sequence[] = { static int dissect_s1ap_KillRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2431 "./asn1/s1ap/s1ap.cnf" +#line 2451 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "KillRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13150,7 +13173,7 @@ static const per_sequence_t KillResponse_sequence[] = { static int dissect_s1ap_KillResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2433 "./asn1/s1ap/s1ap.cnf" +#line 2453 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "KillResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13167,7 +13190,7 @@ static const per_sequence_t PWSRestartIndication_sequence[] = { static int dissect_s1ap_PWSRestartIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2435 "./asn1/s1ap/s1ap.cnf" +#line 2455 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSRestartIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13184,7 +13207,7 @@ static const per_sequence_t PWSFailureIndication_sequence[] = { static int dissect_s1ap_PWSFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2437 "./asn1/s1ap/s1ap.cnf" +#line 2457 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSFailureIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13201,7 +13224,7 @@ static const per_sequence_t DownlinkUEAssociatedLPPaTransport_sequence[] = { static int dissect_s1ap_DownlinkUEAssociatedLPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2439 "./asn1/s1ap/s1ap.cnf" +#line 2459 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkUEAssociatedLPPaTransport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13218,7 +13241,7 @@ static const per_sequence_t UplinkUEAssociatedLPPaTransport_sequence[] = { static int dissect_s1ap_UplinkUEAssociatedLPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2441 "./asn1/s1ap/s1ap.cnf" +#line 2461 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkUEAssociatedLPPaTransport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13235,7 +13258,7 @@ static const per_sequence_t DownlinkNonUEAssociatedLPPaTransport_sequence[] = { static int dissect_s1ap_DownlinkNonUEAssociatedLPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2443 "./asn1/s1ap/s1ap.cnf" +#line 2463 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkNonUEAssociatedLPPaTransport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13252,7 +13275,7 @@ static const per_sequence_t UplinkNonUEAssociatedLPPaTransport_sequence[] = { static int dissect_s1ap_UplinkNonUEAssociatedLPPaTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2445 "./asn1/s1ap/s1ap.cnf" +#line 2465 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkNonUEAssociatedLPPaTransport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13269,7 +13292,7 @@ static const per_sequence_t E_RABModificationIndication_sequence[] = { static int dissect_s1ap_E_RABModificationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2447 "./asn1/s1ap/s1ap.cnf" +#line 2467 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModificationIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13356,7 +13379,7 @@ static const per_sequence_t E_RABModificationConfirm_sequence[] = { static int dissect_s1ap_E_RABModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2449 "./asn1/s1ap/s1ap.cnf" +#line 2469 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModificationConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13402,7 +13425,7 @@ static const per_sequence_t UEContextModificationIndication_sequence[] = { static int dissect_s1ap_UEContextModificationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2451 "./asn1/s1ap/s1ap.cnf" +#line 2471 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13419,7 +13442,7 @@ static const per_sequence_t UEContextModificationConfirm_sequence[] = { static int dissect_s1ap_UEContextModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2453 "./asn1/s1ap/s1ap.cnf" +#line 2473 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13436,7 +13459,7 @@ static const per_sequence_t UEContextSuspendRequest_sequence[] = { static int dissect_s1ap_UEContextSuspendRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2455 "./asn1/s1ap/s1ap.cnf" +#line 2475 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13453,7 +13476,7 @@ static const per_sequence_t UEContextSuspendResponse_sequence[] = { static int dissect_s1ap_UEContextSuspendResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2457 "./asn1/s1ap/s1ap.cnf" +#line 2477 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13470,7 +13493,7 @@ static const per_sequence_t UEContextResumeRequest_sequence[] = { static int dissect_s1ap_UEContextResumeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2459 "./asn1/s1ap/s1ap.cnf" +#line 2479 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13512,7 +13535,7 @@ static const per_sequence_t UEContextResumeResponse_sequence[] = { static int dissect_s1ap_UEContextResumeResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2461 "./asn1/s1ap/s1ap.cnf" +#line 2481 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13554,7 +13577,7 @@ static const per_sequence_t UEContextResumeFailure_sequence[] = { static int dissect_s1ap_UEContextResumeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2463 "./asn1/s1ap/s1ap.cnf" +#line 2483 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13571,7 +13594,7 @@ static const per_sequence_t ConnectionEstablishmentIndication_sequence[] = { static int dissect_s1ap_ConnectionEstablishmentIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2465 "./asn1/s1ap/s1ap.cnf" +#line 2485 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ConnectionEstablishmentIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13588,7 +13611,7 @@ static const per_sequence_t RetrieveUEInformation_sequence[] = { static int dissect_s1ap_RetrieveUEInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2469 "./asn1/s1ap/s1ap.cnf" +#line 2489 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEInformation"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13605,7 +13628,7 @@ static const per_sequence_t UEInformationTransfer_sequence[] = { static int dissect_s1ap_UEInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2471 "./asn1/s1ap/s1ap.cnf" +#line 2491 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13622,7 +13645,7 @@ static const per_sequence_t ENBCPRelocationIndication_sequence[] = { static int dissect_s1ap_ENBCPRelocationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2473 "./asn1/s1ap/s1ap.cnf" +#line 2493 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBCPRelocationIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13639,7 +13662,7 @@ static const per_sequence_t MMECPRelocationIndication_sequence[] = { static int dissect_s1ap_MMECPRelocationIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2475 "./asn1/s1ap/s1ap.cnf" +#line 2495 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMECPRelocationIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13656,7 +13679,7 @@ static const per_sequence_t SecondaryRATDataUsageReport_sequence[] = { static int dissect_s1ap_SecondaryRATDataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2477 "./asn1/s1ap/s1ap.cnf" +#line 2497 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecondaryRATDataUsageReport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13673,7 +13696,7 @@ static const per_sequence_t UERadioCapabilityIDMappingRequest_sequence[] = { static int dissect_s1ap_UERadioCapabilityIDMappingRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2479 "./asn1/s1ap/s1ap.cnf" +#line 2499 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13690,7 +13713,7 @@ static const per_sequence_t UERadioCapabilityIDMappingResponse_sequence[] = { static int dissect_s1ap_UERadioCapabilityIDMappingResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 2481 "./asn1/s1ap/s1ap.cnf" +#line 2501 "./asn1/s1ap/s1ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13703,7 +13726,7 @@ dissect_s1ap_UERadioCapabilityIDMappingResponse(tvbuff_t *tvb _U_, int offset _U static int dissect_s1ap_InitiatingMessage_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 138 "./asn1/s1ap/s1ap.cnf" +#line 140 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->message_type = INITIATING_MESSAGE; @@ -13732,7 +13755,7 @@ dissect_s1ap_InitiatingMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_SuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 142 "./asn1/s1ap/s1ap.cnf" +#line 144 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->message_type = SUCCESSFUL_OUTCOME; @@ -13761,7 +13784,7 @@ dissect_s1ap_SuccessfulOutcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_UnsuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 146 "./asn1/s1ap/s1ap.cnf" +#line 148 "./asn1/s1ap/s1ap.cnf" struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); s1ap_data->message_type = UNSUCCESSFUL_OUTCOME; @@ -14161,7 +14184,7 @@ dissect_s1ap_CellStateIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_s1ap_T_uERLFReportContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 833 "./asn1/s1ap/s1ap.cnf" +#line 835 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -15480,6 +15503,14 @@ static int dissect_PrivacyIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U offset += 7; offset >>= 3; return offset; } +int dissect_s1ap_MDTMode_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_s1ap_MDTMode(tvb, offset, &asn1_ctx, tree, hf_s1ap_s1ap_MDTMode_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_MessageIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -17619,7 +17650,7 @@ int dissect_s1ap_SONtransferCause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, /*--- End of included file: packet-s1ap-fn.c ---*/ -#line 388 "./asn1/s1ap/packet-s1ap-template.c" +#line 390 "./asn1/s1ap/packet-s1ap-template.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { @@ -18142,7 +18173,7 @@ proto_reg_handoff_s1ap(void) /*--- End of included file: packet-s1ap-dis-tab.c ---*/ -#line 508 "./asn1/s1ap/packet-s1ap-template.c" +#line 510 "./asn1/s1ap/packet-s1ap-template.c" } else { if (SctpPort != 0) { dissector_delete_uint("sctp.port", SctpPort, s1ap_handle); @@ -18772,6 +18803,10 @@ void proto_register_s1ap(void) { { "PrivacyIndicator", "s1ap.PrivacyIndicator", FT_UINT32, BASE_DEC, VALS(s1ap_PrivacyIndicator_vals), 0, NULL, HFILL }}, + { &hf_s1ap_s1ap_MDTMode_PDU, + { "MDTMode", "s1ap.MDTMode", + FT_UINT32, BASE_DEC, VALS(s1ap_MDTMode_vals), 0, + NULL, HFILL }}, { &hf_s1ap_MessageIdentifier_PDU, { "MessageIdentifier", "s1ap.MessageIdentifier", FT_UINT16, BASE_DEC|BASE_EXT_STRING, <e_rrc_messageIdentifier_vals_ext, 0, @@ -21850,7 +21885,7 @@ void proto_register_s1ap(void) { NULL, HFILL }}, /*--- End of included file: packet-s1ap-hfarr.c ---*/ -#line 719 "./asn1/s1ap/packet-s1ap-template.c" +#line 721 "./asn1/s1ap/packet-s1ap-template.c" }; /* List of subtrees */ @@ -21895,6 +21930,8 @@ void proto_register_s1ap(void) { &ett_s1ap_quantityConfigNR_R15, &ett_s1ap_blackCellsToAddModList, &ett_s1ap_NB_IoT_RLF_Report_Container, + &ett_s1ap_MDT_ConfigurationNR, + &ett_s1ap_IntersystemSONConfigurationTransfer, /*--- Included file: packet-s1ap-ettarr.c ---*/ #line 1 "./asn1/s1ap/packet-s1ap-ettarr.c" @@ -22305,7 +22342,7 @@ void proto_register_s1ap(void) { &ett_s1ap_EHRPDMultiSectorLoadReportingResponseItem, /*--- End of included file: packet-s1ap-ettarr.c ---*/ -#line 764 "./asn1/s1ap/packet-s1ap-template.c" +#line 768 "./asn1/s1ap/packet-s1ap-template.c" }; static ei_register_info ei[] = { diff --git a/epan/dissectors/packet-s1ap.h b/epan/dissectors/packet-s1ap.h index 042e1ecbe9..a1f28c7f9e 100644 --- a/epan/dissectors/packet-s1ap.h +++ b/epan/dissectors/packet-s1ap.h @@ -52,6 +52,7 @@ int dissect_s1ap_EUTRAN_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto int dissect_s1ap_HandoverRestrictionList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_s1ap_LastVisitedEUTRANCellInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_s1ap_LastVisitedGERANCellInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_s1ap_MDTMode_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_s1ap_SourceeNB_ToTargeteNB_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_s1ap_UE_HistoryInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); diff --git a/epan/dissectors/packet-x2ap.c b/epan/dissectors/packet-x2ap.c index a38616ff50..532fe89714 100644 --- a/epan/dissectors/packet-x2ap.c +++ b/epan/dissectors/packet-x2ap.c @@ -1886,6 +1886,7 @@ static int ett_x2ap_Non_anchorCarrierFrequency = -1; static int ett_x2ap_ReportCharacteristics_ENDC = -1; static int ett_x2ap_TargetCellInNGRAN = -1; static int ett_x2ap_TDDULDLConfigurationCommonNR = -1; +static int ett_x2ap_MDT_ConfigurationNR = -1; /*--- Included file: packet-x2ap-ett.c ---*/ #line 1 "./asn1/x2ap/packet-x2ap-ett.c" @@ -2469,7 +2470,7 @@ static gint ett_x2ap_SuccessfulOutcome = -1; static gint ett_x2ap_UnsuccessfulOutcome = -1; /*--- End of included file: packet-x2ap-ett.c ---*/ -#line 174 "./asn1/x2ap/packet-x2ap-template.c" +#line 175 "./asn1/x2ap/packet-x2ap-template.c" /* Forward declarations */ static int dissect_x2ap_Registration_Request_ENDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); @@ -8868,8 +8869,18 @@ dissect_x2ap_MBSFN_Subframe_Infolist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_x2ap_MDT_ConfigurationNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 847 "./asn1/x2ap/x2ap.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, NULL); + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_MDT_ConfigurationNR); + dissect_ngap_MDT_Configuration_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + + return offset; } @@ -12595,7 +12606,7 @@ static const per_sequence_t HandoverRequest_sequence[] = { static int dissect_x2ap_HandoverRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 849 "./asn1/x2ap/x2ap.cnf" +#line 858 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12726,7 +12737,7 @@ static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { static int dissect_x2ap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 851 "./asn1/x2ap/x2ap.cnf" +#line 860 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12774,7 +12785,7 @@ static const per_sequence_t HandoverPreparationFailure_sequence[] = { static int dissect_x2ap_HandoverPreparationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 853 "./asn1/x2ap/x2ap.cnf" +#line 862 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12791,7 +12802,7 @@ static const per_sequence_t HandoverReport_sequence[] = { static int dissect_x2ap_HandoverReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 891 "./asn1/x2ap/x2ap.cnf" +#line 900 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverReport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12808,7 +12819,7 @@ static const per_sequence_t EarlyStatusTransfer_sequence[] = { static int dissect_x2ap_EarlyStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1039 "./asn1/x2ap/x2ap.cnf" +#line 1048 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "EarlyStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12879,7 +12890,7 @@ static const per_sequence_t SNStatusTransfer_sequence[] = { static int dissect_x2ap_SNStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 855 "./asn1/x2ap/x2ap.cnf" +#line 864 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12928,7 +12939,7 @@ static const per_sequence_t UEContextRelease_sequence[] = { static int dissect_x2ap_UEContextRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 857 "./asn1/x2ap/x2ap.cnf" +#line 866 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextRelease"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12945,7 +12956,7 @@ static const per_sequence_t HandoverCancel_sequence[] = { static int dissect_x2ap_HandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 859 "./asn1/x2ap/x2ap.cnf" +#line 868 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancel"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12962,7 +12973,7 @@ static const per_sequence_t HandoverSuccess_sequence[] = { static int dissect_x2ap_HandoverSuccess(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1037 "./asn1/x2ap/x2ap.cnf" +#line 1046 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverSuccess"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12979,7 +12990,7 @@ static const per_sequence_t ConditionalHandoverCancel_sequence[] = { static int dissect_x2ap_ConditionalHandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1041 "./asn1/x2ap/x2ap.cnf" +#line 1050 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ConditionalHandoverCancel"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -12996,7 +13007,7 @@ static const per_sequence_t ErrorIndication_sequence[] = { static int dissect_x2ap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 861 "./asn1/x2ap/x2ap.cnf" +#line 870 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13013,7 +13024,7 @@ static const per_sequence_t ResetRequest_sequence[] = { static int dissect_x2ap_ResetRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 863 "./asn1/x2ap/x2ap.cnf" +#line 872 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13030,7 +13041,7 @@ static const per_sequence_t ResetResponse_sequence[] = { static int dissect_x2ap_ResetResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 865 "./asn1/x2ap/x2ap.cnf" +#line 874 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13047,7 +13058,7 @@ static const per_sequence_t X2SetupRequest_sequence[] = { static int dissect_x2ap_X2SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 867 "./asn1/x2ap/x2ap.cnf" +#line 876 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2SetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13064,7 +13075,7 @@ static const per_sequence_t X2SetupResponse_sequence[] = { static int dissect_x2ap_X2SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 869 "./asn1/x2ap/x2ap.cnf" +#line 878 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2SetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13081,7 +13092,7 @@ static const per_sequence_t X2SetupFailure_sequence[] = { static int dissect_x2ap_X2SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 871 "./asn1/x2ap/x2ap.cnf" +#line 880 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2SetupFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13098,7 +13109,7 @@ static const per_sequence_t LoadInformation_sequence[] = { static int dissect_x2ap_LoadInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 873 "./asn1/x2ap/x2ap.cnf" +#line 882 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LoadInformation"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13147,7 +13158,7 @@ static const per_sequence_t ENBConfigurationUpdate_sequence[] = { static int dissect_x2ap_ENBConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 875 "./asn1/x2ap/x2ap.cnf" +#line 884 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13209,7 +13220,7 @@ static const per_sequence_t ENBConfigurationUpdateAcknowledge_sequence[] = { static int dissect_x2ap_ENBConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 877 "./asn1/x2ap/x2ap.cnf" +#line 886 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13226,7 +13237,7 @@ static const per_sequence_t ENBConfigurationUpdateFailure_sequence[] = { static int dissect_x2ap_ENBConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 879 "./asn1/x2ap/x2ap.cnf" +#line 888 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13243,7 +13254,7 @@ static const per_sequence_t ResourceStatusRequest_sequence[] = { static int dissect_x2ap_ResourceStatusRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 881 "./asn1/x2ap/x2ap.cnf" +#line 890 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13328,7 +13339,7 @@ static const per_sequence_t ResourceStatusResponse_sequence[] = { static int dissect_x2ap_ResourceStatusResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 883 "./asn1/x2ap/x2ap.cnf" +#line 892 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13436,7 +13447,7 @@ static const per_sequence_t ResourceStatusFailure_sequence[] = { static int dissect_x2ap_ResourceStatusFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 885 "./asn1/x2ap/x2ap.cnf" +#line 894 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13483,7 +13494,7 @@ static const per_sequence_t ResourceStatusUpdate_sequence[] = { static int dissect_x2ap_ResourceStatusUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 887 "./asn1/x2ap/x2ap.cnf" +#line 896 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13532,7 +13543,7 @@ static const per_sequence_t PrivateMessage_sequence[] = { static int dissect_x2ap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 889 "./asn1/x2ap/x2ap.cnf" +#line 898 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13549,7 +13560,7 @@ static const per_sequence_t MobilityChangeRequest_sequence[] = { static int dissect_x2ap_MobilityChangeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 895 "./asn1/x2ap/x2ap.cnf" +#line 904 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityChangeRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13566,7 +13577,7 @@ static const per_sequence_t MobilityChangeAcknowledge_sequence[] = { static int dissect_x2ap_MobilityChangeAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 897 "./asn1/x2ap/x2ap.cnf" +#line 906 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityChangeAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13583,7 +13594,7 @@ static const per_sequence_t MobilityChangeFailure_sequence[] = { static int dissect_x2ap_MobilityChangeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 899 "./asn1/x2ap/x2ap.cnf" +#line 908 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityChangeFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13600,7 +13611,7 @@ static const per_sequence_t RLFIndication_sequence[] = { static int dissect_x2ap_RLFIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 893 "./asn1/x2ap/x2ap.cnf" +#line 902 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RLFIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13617,7 +13628,7 @@ static const per_sequence_t CellActivationRequest_sequence[] = { static int dissect_x2ap_CellActivationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 901 "./asn1/x2ap/x2ap.cnf" +#line 910 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13663,7 +13674,7 @@ static const per_sequence_t CellActivationResponse_sequence[] = { static int dissect_x2ap_CellActivationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 903 "./asn1/x2ap/x2ap.cnf" +#line 912 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13709,7 +13720,7 @@ static const per_sequence_t CellActivationFailure_sequence[] = { static int dissect_x2ap_CellActivationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 905 "./asn1/x2ap/x2ap.cnf" +#line 914 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13726,7 +13737,7 @@ static const per_sequence_t X2Release_sequence[] = { static int dissect_x2ap_X2Release(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 907 "./asn1/x2ap/x2ap.cnf" +#line 916 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2Release"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13743,7 +13754,7 @@ static const per_sequence_t X2APMessageTransfer_sequence[] = { static int dissect_x2ap_X2APMessageTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 909 "./asn1/x2ap/x2ap.cnf" +#line 918 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2APMessageTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13795,7 +13806,7 @@ static const per_sequence_t SeNBAdditionRequest_sequence[] = { static int dissect_x2ap_SeNBAdditionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 917 "./asn1/x2ap/x2ap.cnf" +#line 926 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBAdditionRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13883,7 +13894,7 @@ static const per_sequence_t SeNBAdditionRequestAcknowledge_sequence[] = { static int dissect_x2ap_SeNBAdditionRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 919 "./asn1/x2ap/x2ap.cnf" +#line 928 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBAdditionRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13970,7 +13981,7 @@ static const per_sequence_t SeNBAdditionRequestReject_sequence[] = { static int dissect_x2ap_SeNBAdditionRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 921 "./asn1/x2ap/x2ap.cnf" +#line 930 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBAdditionRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -13987,7 +13998,7 @@ static const per_sequence_t SeNBReconfigurationComplete_sequence[] = { static int dissect_x2ap_SeNBReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 923 "./asn1/x2ap/x2ap.cnf" +#line 932 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBReconfigurationComplete"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14057,7 +14068,7 @@ static const per_sequence_t SeNBModificationRequest_sequence[] = { static int dissect_x2ap_SeNBModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 925 "./asn1/x2ap/x2ap.cnf" +#line 934 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14304,7 +14315,7 @@ static const per_sequence_t SeNBModificationRequestAcknowledge_sequence[] = { static int dissect_x2ap_SeNBModificationRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 927 "./asn1/x2ap/x2ap.cnf" +#line 936 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14525,7 +14536,7 @@ static const per_sequence_t SeNBModificationRequestReject_sequence[] = { static int dissect_x2ap_SeNBModificationRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 929 "./asn1/x2ap/x2ap.cnf" +#line 938 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14542,7 +14553,7 @@ static const per_sequence_t SeNBModificationRequired_sequence[] = { static int dissect_x2ap_SeNBModificationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 931 "./asn1/x2ap/x2ap.cnf" +#line 940 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14589,7 +14600,7 @@ static const per_sequence_t SeNBModificationConfirm_sequence[] = { static int dissect_x2ap_SeNBModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 933 "./asn1/x2ap/x2ap.cnf" +#line 942 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14606,7 +14617,7 @@ static const per_sequence_t SeNBModificationRefuse_sequence[] = { static int dissect_x2ap_SeNBModificationRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 935 "./asn1/x2ap/x2ap.cnf" +#line 944 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBModificationRefuse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14623,7 +14634,7 @@ static const per_sequence_t SeNBReleaseRequest_sequence[] = { static int dissect_x2ap_SeNBReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 937 "./asn1/x2ap/x2ap.cnf" +#line 946 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBReleaseRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14709,7 +14720,7 @@ static const per_sequence_t SeNBReleaseRequired_sequence[] = { static int dissect_x2ap_SeNBReleaseRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 939 "./asn1/x2ap/x2ap.cnf" +#line 948 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBReleaseRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14726,7 +14737,7 @@ static const per_sequence_t SeNBReleaseConfirm_sequence[] = { static int dissect_x2ap_SeNBReleaseConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 941 "./asn1/x2ap/x2ap.cnf" +#line 950 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBReleaseConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14812,7 +14823,7 @@ static const per_sequence_t SeNBCounterCheckRequest_sequence[] = { static int dissect_x2ap_SeNBCounterCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 943 "./asn1/x2ap/x2ap.cnf" +#line 952 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SeNBCounterCheckRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14870,7 +14881,7 @@ static const per_sequence_t X2RemovalRequest_sequence[] = { static int dissect_x2ap_X2RemovalRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 911 "./asn1/x2ap/x2ap.cnf" +#line 920 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2RemovalRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14887,7 +14898,7 @@ static const per_sequence_t X2RemovalResponse_sequence[] = { static int dissect_x2ap_X2RemovalResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 913 "./asn1/x2ap/x2ap.cnf" +#line 922 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2RemovalResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14904,7 +14915,7 @@ static const per_sequence_t X2RemovalFailure_sequence[] = { static int dissect_x2ap_X2RemovalFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 915 "./asn1/x2ap/x2ap.cnf" +#line 924 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "X2RemovalFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14921,7 +14932,7 @@ static const per_sequence_t RetrieveUEContextRequest_sequence[] = { static int dissect_x2ap_RetrieveUEContextRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 945 "./asn1/x2ap/x2ap.cnf" +#line 954 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -14938,7 +14949,7 @@ static const per_sequence_t RetrieveUEContextResponse_sequence[] = { static int dissect_x2ap_RetrieveUEContextResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 947 "./asn1/x2ap/x2ap.cnf" +#line 956 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15011,7 +15022,7 @@ static const per_sequence_t RetrieveUEContextFailure_sequence[] = { static int dissect_x2ap_RetrieveUEContextFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 949 "./asn1/x2ap/x2ap.cnf" +#line 958 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15028,7 +15039,7 @@ static const per_sequence_t SgNBAdditionRequest_sequence[] = { static int dissect_x2ap_SgNBAdditionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 951 "./asn1/x2ap/x2ap.cnf" +#line 960 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBAdditionRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15137,7 +15148,7 @@ static const per_sequence_t SgNBAdditionRequestAcknowledge_sequence[] = { static int dissect_x2ap_SgNBAdditionRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 953 "./asn1/x2ap/x2ap.cnf" +#line 962 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBAdditionRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15244,7 +15255,7 @@ static const per_sequence_t SgNBAdditionRequestReject_sequence[] = { static int dissect_x2ap_SgNBAdditionRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 955 "./asn1/x2ap/x2ap.cnf" +#line 964 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBAdditionRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15261,7 +15272,7 @@ static const per_sequence_t SgNBReconfigurationComplete_sequence[] = { static int dissect_x2ap_SgNBReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 957 "./asn1/x2ap/x2ap.cnf" +#line 966 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReconfigurationComplete"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15330,7 +15341,7 @@ static const per_sequence_t SgNBModificationRequest_sequence[] = { static int dissect_x2ap_SgNBModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 959 "./asn1/x2ap/x2ap.cnf" +#line 968 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15630,7 +15641,7 @@ static const per_sequence_t SgNBModificationRequestAcknowledge_sequence[] = { static int dissect_x2ap_SgNBModificationRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 961 "./asn1/x2ap/x2ap.cnf" +#line 970 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15904,7 +15915,7 @@ static const per_sequence_t SgNBModificationRequestReject_sequence[] = { static int dissect_x2ap_SgNBModificationRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 963 "./asn1/x2ap/x2ap.cnf" +#line 972 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -15921,7 +15932,7 @@ static const per_sequence_t SgNBModificationRequired_sequence[] = { static int dissect_x2ap_SgNBModificationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 965 "./asn1/x2ap/x2ap.cnf" +#line 974 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16055,7 +16066,7 @@ static const per_sequence_t SgNBModificationConfirm_sequence[] = { static int dissect_x2ap_SgNBModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 967 "./asn1/x2ap/x2ap.cnf" +#line 976 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16154,7 +16165,7 @@ static const per_sequence_t SgNBModificationRefuse_sequence[] = { static int dissect_x2ap_SgNBModificationRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 969 "./asn1/x2ap/x2ap.cnf" +#line 978 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBModificationRefuse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16171,7 +16182,7 @@ static const per_sequence_t SgNBReleaseRequest_sequence[] = { static int dissect_x2ap_SgNBReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 971 "./asn1/x2ap/x2ap.cnf" +#line 980 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReleaseRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16271,7 +16282,7 @@ static const per_sequence_t SgNBReleaseRequestAcknowledge_sequence[] = { static int dissect_x2ap_SgNBReleaseRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 973 "./asn1/x2ap/x2ap.cnf" +#line 982 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReleaseRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16318,7 +16329,7 @@ static const per_sequence_t SgNBReleaseRequestReject_sequence[] = { static int dissect_x2ap_SgNBReleaseRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 975 "./asn1/x2ap/x2ap.cnf" +#line 984 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReleaseRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16335,7 +16346,7 @@ static const per_sequence_t SgNBReleaseRequired_sequence[] = { static int dissect_x2ap_SgNBReleaseRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 977 "./asn1/x2ap/x2ap.cnf" +#line 986 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReleaseRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16382,7 +16393,7 @@ static const per_sequence_t SgNBReleaseConfirm_sequence[] = { static int dissect_x2ap_SgNBReleaseConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 979 "./asn1/x2ap/x2ap.cnf" +#line 988 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBReleaseConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16482,7 +16493,7 @@ static const per_sequence_t SgNBCounterCheckRequest_sequence[] = { static int dissect_x2ap_SgNBCounterCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 981 "./asn1/x2ap/x2ap.cnf" +#line 990 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBCounterCheckRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16530,7 +16541,7 @@ static const per_sequence_t SgNBChangeRequired_sequence[] = { static int dissect_x2ap_SgNBChangeRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 983 "./asn1/x2ap/x2ap.cnf" +#line 992 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBChangeRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16547,7 +16558,7 @@ static const per_sequence_t SgNBChangeConfirm_sequence[] = { static int dissect_x2ap_SgNBChangeConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 985 "./asn1/x2ap/x2ap.cnf" +#line 994 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBChangeConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16647,7 +16658,7 @@ static const per_sequence_t RRCTransfer_sequence[] = { static int dissect_x2ap_RRCTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 989 "./asn1/x2ap/x2ap.cnf" +#line 998 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16664,7 +16675,7 @@ static const per_sequence_t SgNBChangeRefuse_sequence[] = { static int dissect_x2ap_SgNBChangeRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 987 "./asn1/x2ap/x2ap.cnf" +#line 996 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBChangeRefuse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16681,7 +16692,7 @@ static const per_sequence_t ENDCX2SetupRequest_sequence[] = { static int dissect_x2ap_ENDCX2SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 991 "./asn1/x2ap/x2ap.cnf" +#line 1000 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2SetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16958,7 +16969,7 @@ static const per_sequence_t ENDCX2SetupResponse_sequence[] = { static int dissect_x2ap_ENDCX2SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 993 "./asn1/x2ap/x2ap.cnf" +#line 1002 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2SetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -16997,7 +17008,7 @@ static const per_sequence_t ENDCX2SetupFailure_sequence[] = { static int dissect_x2ap_ENDCX2SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 995 "./asn1/x2ap/x2ap.cnf" +#line 1004 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2SetupFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17014,7 +17025,7 @@ static const per_sequence_t ENDCConfigurationUpdate_sequence[] = { static int dissect_x2ap_ENDCConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 997 "./asn1/x2ap/x2ap.cnf" +#line 1006 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCConfigurationUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17144,7 +17155,7 @@ static const per_sequence_t ENDCConfigurationUpdateAcknowledge_sequence[] = { static int dissect_x2ap_ENDCConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 999 "./asn1/x2ap/x2ap.cnf" +#line 1008 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCConfigurationUpdateAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17183,7 +17194,7 @@ static const per_sequence_t ENDCConfigurationUpdateFailure_sequence[] = { static int dissect_x2ap_ENDCConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1001 "./asn1/x2ap/x2ap.cnf" +#line 1010 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCConfigurationUpdateFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17200,7 +17211,7 @@ static const per_sequence_t ENDCCellActivationRequest_sequence[] = { static int dissect_x2ap_ENDCCellActivationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1005 "./asn1/x2ap/x2ap.cnf" +#line 1014 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCCellActivationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17246,7 +17257,7 @@ static const per_sequence_t ENDCCellActivationResponse_sequence[] = { static int dissect_x2ap_ENDCCellActivationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1007 "./asn1/x2ap/x2ap.cnf" +#line 1016 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCCellActivationResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17292,7 +17303,7 @@ static const per_sequence_t ENDCCellActivationFailure_sequence[] = { static int dissect_x2ap_ENDCCellActivationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1009 "./asn1/x2ap/x2ap.cnf" +#line 1018 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCCellActivationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17309,7 +17320,7 @@ static const per_sequence_t ENDCResourceStatusRequest_sequence[] = { static int dissect_x2ap_ENDCResourceStatusRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1043 "./asn1/x2ap/x2ap.cnf" +#line 1052 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCResourceStatusRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17404,7 +17415,7 @@ static const per_sequence_t ENDCResourceStatusResponse_sequence[] = { static int dissect_x2ap_ENDCResourceStatusResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1045 "./asn1/x2ap/x2ap.cnf" +#line 1054 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCResourceStatusResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17421,7 +17432,7 @@ static const per_sequence_t ENDCResourceStatusFailure_sequence[] = { static int dissect_x2ap_ENDCResourceStatusFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1047 "./asn1/x2ap/x2ap.cnf" +#line 1056 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCResourceStatusFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17438,7 +17449,7 @@ static const per_sequence_t ENDCResourceStatusUpdate_sequence[] = { static int dissect_x2ap_ENDCResourceStatusUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1049 "./asn1/x2ap/x2ap.cnf" +#line 1058 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCResourceStatusUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17498,7 +17509,7 @@ static const per_sequence_t SecondaryRATDataUsageReport_sequence[] = { static int dissect_x2ap_SecondaryRATDataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1003 "./asn1/x2ap/x2ap.cnf" +#line 1012 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecondaryRATDataUsageReport"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17515,7 +17526,7 @@ static const per_sequence_t SgNBActivityNotification_sequence[] = { static int dissect_x2ap_SgNBActivityNotification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1019 "./asn1/x2ap/x2ap.cnf" +#line 1028 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SgNBActivityNotification"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17532,7 +17543,7 @@ static const per_sequence_t ENDCPartialResetRequired_sequence[] = { static int dissect_x2ap_ENDCPartialResetRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1011 "./asn1/x2ap/x2ap.cnf" +#line 1020 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCPartialResetRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17549,7 +17560,7 @@ static const per_sequence_t ENDCPartialResetConfirm_sequence[] = { static int dissect_x2ap_ENDCPartialResetConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1013 "./asn1/x2ap/x2ap.cnf" +#line 1022 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCPartialResetConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17566,7 +17577,7 @@ static const per_sequence_t EUTRANRCellResourceCoordinationRequest_sequence[] = static int dissect_x2ap_EUTRANRCellResourceCoordinationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1015 "./asn1/x2ap/x2ap.cnf" +#line 1024 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "EUTRANRCellResourceCoordinationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17647,7 +17658,7 @@ static const per_sequence_t EUTRANRCellResourceCoordinationResponse_sequence[] = static int dissect_x2ap_EUTRANRCellResourceCoordinationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1017 "./asn1/x2ap/x2ap.cnf" +#line 1026 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "EUTRANRCellResourceCoordinationResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17714,7 +17725,7 @@ static const per_sequence_t ENDCX2RemovalRequest_sequence[] = { static int dissect_x2ap_ENDCX2RemovalRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1021 "./asn1/x2ap/x2ap.cnf" +#line 1030 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2RemovalRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17753,7 +17764,7 @@ static const per_sequence_t ENDCX2RemovalResponse_sequence[] = { static int dissect_x2ap_ENDCX2RemovalResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1023 "./asn1/x2ap/x2ap.cnf" +#line 1032 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2RemovalResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17792,7 +17803,7 @@ static const per_sequence_t ENDCX2RemovalFailure_sequence[] = { static int dissect_x2ap_ENDCX2RemovalFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1025 "./asn1/x2ap/x2ap.cnf" +#line 1034 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCX2RemovalFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17809,7 +17820,7 @@ static const per_sequence_t DataForwardingAddressIndication_sequence[] = { static int dissect_x2ap_DataForwardingAddressIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1027 "./asn1/x2ap/x2ap.cnf" +#line 1036 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DataForwardingAddressIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17856,7 +17867,7 @@ static const per_sequence_t GNBStatusIndication_sequence[] = { static int dissect_x2ap_GNBStatusIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1029 "./asn1/x2ap/x2ap.cnf" +#line 1038 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNBStatusIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17873,7 +17884,7 @@ static const per_sequence_t ENDCConfigurationTransfer_sequence[] = { static int dissect_x2ap_ENDCConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1031 "./asn1/x2ap/x2ap.cnf" +#line 1040 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENDCConfigurationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17890,7 +17901,7 @@ static const per_sequence_t TraceStart_sequence[] = { static int dissect_x2ap_TraceStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1035 "./asn1/x2ap/x2ap.cnf" +#line 1044 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceStart"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17907,7 +17918,7 @@ static const per_sequence_t DeactivateTrace_sequence[] = { static int dissect_x2ap_DeactivateTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1033 "./asn1/x2ap/x2ap.cnf" +#line 1042 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17924,7 +17935,7 @@ static const per_sequence_t CellTrafficTrace_sequence[] = { static int dissect_x2ap_CellTrafficTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1051 "./asn1/x2ap/x2ap.cnf" +#line 1060 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -17941,7 +17952,7 @@ static const per_sequence_t F1CTrafficTransfer_sequence[] = { static int dissect_x2ap_F1CTrafficTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1053 "./asn1/x2ap/x2ap.cnf" +#line 1062 "./asn1/x2ap/x2ap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "F1CTrafficTransfer"); @@ -21519,7 +21530,7 @@ static int dissect_X2AP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto /*--- End of included file: packet-x2ap-fn.c ---*/ -#line 291 "./asn1/x2ap/packet-x2ap-template.c" +#line 292 "./asn1/x2ap/packet-x2ap-template.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { @@ -26588,7 +26599,7 @@ void proto_register_x2ap(void) { "UnsuccessfulOutcome_value", HFILL }}, /*--- End of included file: packet-x2ap-hfarr.c ---*/ -#line 639 "./asn1/x2ap/packet-x2ap-template.c" +#line 640 "./asn1/x2ap/packet-x2ap-template.c" }; /* List of subtrees */ @@ -26637,6 +26648,7 @@ void proto_register_x2ap(void) { &ett_x2ap_ReportCharacteristics_ENDC, &ett_x2ap_TargetCellInNGRAN, &ett_x2ap_TDDULDLConfigurationCommonNR, + &ett_x2ap_MDT_ConfigurationNR, /*--- Included file: packet-x2ap-ettarr.c ---*/ #line 1 "./asn1/x2ap/packet-x2ap-ettarr.c" @@ -27220,7 +27232,7 @@ void proto_register_x2ap(void) { &ett_x2ap_UnsuccessfulOutcome, /*--- End of included file: packet-x2ap-ettarr.c ---*/ -#line 688 "./asn1/x2ap/packet-x2ap-template.c" +#line 690 "./asn1/x2ap/packet-x2ap-template.c" }; module_t *x2ap_module; @@ -27762,7 +27774,7 @@ proto_reg_handoff_x2ap(void) /*--- End of included file: packet-x2ap-dis-tab.c ---*/ -#line 734 "./asn1/x2ap/packet-x2ap-template.c" +#line 736 "./asn1/x2ap/packet-x2ap-template.c" } else { if (SctpPort != 0) { dissector_delete_uint("sctp.port", SctpPort, x2ap_handle); |