From 5cf2a6193814c1055466c448ca121572e47e9fd8 Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Mon, 4 Oct 2021 21:36:05 +0200 Subject: [PATCH] XnAP: upgrade dissector to v16.7.0 --- .../asn1/xnap/XnAP-CommonDataTypes.asn | 2 +- epan/dissectors/asn1/xnap/XnAP-Constants.asn | 4 +- epan/dissectors/asn1/xnap/XnAP-Containers.asn | 2 +- epan/dissectors/asn1/xnap/XnAP-IEs.asn | 56 ++++++++++------ .../asn1/xnap/XnAP-PDU-Contents.asn | 18 +++-- .../asn1/xnap/XnAP-PDU-Descriptions.asn | 4 +- .../asn1/xnap/packet-xnap-template.c | 4 +- epan/dissectors/asn1/xnap/xnap.cnf | 6 +- epan/dissectors/packet-xnap.c | 66 ++++++++++++++++++- 9 files changed, 123 insertions(+), 39 deletions(-) diff --git a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn index 6f0172baf1..a44bfe643b 100644 --- a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn +++ b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.6 Common definitions -- ************************************************************** -- diff --git a/epan/dissectors/asn1/xnap/XnAP-Constants.asn b/epan/dissectors/asn1/xnap/XnAP-Constants.asn index f4ceba1d80..77c2a4b8e5 100644 --- a/epan/dissectors/asn1/xnap/XnAP-Constants.asn +++ b/epan/dissectors/asn1/xnap/XnAP-Constants.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.7 Constant definitions -- ************************************************************** -- @@ -394,5 +394,7 @@ id-PagingeDRXInformation ProtocolIE-ID ::= 245 id-CHO-MRDC-EarlyDataForwarding ProtocolIE-ID ::= 246 id-SCGIndicator ProtocolIE-ID ::= 247 id-UESpecificDRX ProtocolIE-ID ::= 248 +id-PDUSessionExpectedUEActivityBehaviour ProtocolIE-ID ::= 249 +id-QoS-Mapping-Information ProtocolIE-ID ::= 250 END diff --git a/epan/dissectors/asn1/xnap/XnAP-Containers.asn b/epan/dissectors/asn1/xnap/XnAP-Containers.asn index 5be487bdef..80a094ca43 100644 --- a/epan/dissectors/asn1/xnap/XnAP-Containers.asn +++ b/epan/dissectors/asn1/xnap/XnAP-Containers.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.8 Container definitions -- ************************************************************** -- diff --git a/epan/dissectors/asn1/xnap/XnAP-IEs.asn b/epan/dissectors/asn1/xnap/XnAP-IEs.asn index 1f05e0a413..d6ca7ae6d6 100644 --- a/epan/dissectors/asn1/xnap/XnAP-IEs.asn +++ b/epan/dissectors/asn1/xnap/XnAP-IEs.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.5 Information Element definitions -- ************************************************************** -- @@ -88,6 +88,7 @@ IMPORTS id-DL-scheduling-PDCCH-CCE-usage, id-UL-scheduling-PDCCH-CCE-usage, id-SFN-Offset, + id-QoS-Mapping-Information, maxEARFCN, maxnoofAllowedAreas, maxnoofAMFRegions, @@ -189,6 +190,7 @@ Additional-UL-NG-U-TNLatUPF-Item ::= SEQUENCE { } Additional-UL-NG-U-TNLatUPF-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +{ ID id-PDUSessionCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}, ... } @@ -481,7 +483,7 @@ CapacityValue ::= INTEGER (0..100) CapacityValueInfo ::= SEQUENCE { capacityValue CapacityValue, ssbAreaCapacityValueList SSBAreaCapacityValue-List OPTIONAL, -iE-Extension ProtocolExtensionContainer { {CapacityValueInfo-ExtIEs} } OPTIONAL, + iE-Extension ProtocolExtensionContainer { {CapacityValueInfo-ExtIEs} } OPTIONAL, ... } @@ -677,12 +679,12 @@ CellMeasurementResult ::= SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF CellMe CellMeasurementResult-Item ::= SEQUENCE { cell-ID GlobalNG-RANCell-ID, -radioResourceStatus RadioResourceStatus OPTIONAL, -tNLCapacityIndicator TNLCapacityIndicator OPTIONAL, -compositeAvailableCapacityGroup CompositeAvailableCapacityGroup OPTIONAL, -sliceAvailableCapacity SliceAvailableCapacity OPTIONAL, -numberofActiveUEs NumberofActiveUEs OPTIONAL, -rRCConnections RRCConnections OPTIONAL, + radioResourceStatus RadioResourceStatus OPTIONAL, + tNLCapacityIndicator TNLCapacityIndicator OPTIONAL, + compositeAvailableCapacityGroup CompositeAvailableCapacityGroup OPTIONAL, + sliceAvailableCapacity SliceAvailableCapacity OPTIONAL, + numberofActiveUEs NumberofActiveUEs OPTIONAL, + rRCConnections RRCConnections OPTIONAL, iE-Extensions ProtocolExtensionContainer { { CellMeasurementResult-Item-ExtIEs} } OPTIONAL, ... } @@ -697,8 +699,8 @@ CellToReport ::= SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF CellToReport-It CellToReport-Item ::= SEQUENCE { cell-ID GlobalNG-RANCell-ID, -sSBToReport-List SSBToReport-List OPTIONAL, -sliceToReport-List SliceToReport-List OPTIONAL, + sSBToReport-List SSBToReport-List OPTIONAL, + sliceToReport-List SliceToReport-List OPTIONAL, iE-Extensions ProtocolExtensionContainer { { CellToReport-Item-ExtIEs} } OPTIONAL, ... } @@ -2390,8 +2392,8 @@ UL-scheduling-PDCCH-CCE-usage ::= INTEGER (0.. 100) TNLCapacityIndicator ::= SEQUENCE { dLTNLOfferedCapacity OfferedCapacity, -dLTNLAvailableCapacity AvailableCapacity, -uLTNLOfferedCapacity OfferedCapacity, + dLTNLAvailableCapacity AvailableCapacity, + uLTNLOfferedCapacity OfferedCapacity, uLTNLAvailableCapacity AvailableCapacity, iE-Extensions ProtocolExtensionContainer { { TNLCapacityIndicator-ExtIEs} } OPTIONAL, ... @@ -2691,7 +2693,7 @@ NonGBRResources-Offered ::= ENUMERATED {true, ...} NRV2XServicesAuthorized ::= SEQUENCE { vehicleUE VehicleUE OPTIONAL, -pedestrianUE PedestrianUE OPTIONAL, + pedestrianUE PedestrianUE OPTIONAL, iE-Extensions ProtocolExtensionContainer { {NRV2XServicesAuthorized-ExtIEs} } OPTIONAL, ... } @@ -3935,6 +3937,17 @@ QoSFlowwithCause-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } +QoS-Mapping-Information ::= SEQUENCE { + dscp BIT STRING (SIZE(6)) OPTIONAL, + flow-label BIT STRING (SIZE(20)) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoS-Mapping-Information-ExtIEs} } OPTIONAL, + ... +} + +QoS-Mapping-Information-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + QoSParaSetIndex ::= INTEGER (1..8,...) QoSParaSetNotifyIndex ::= INTEGER (0..8,...) @@ -4113,7 +4126,7 @@ ReportCharacteristics ::= BIT STRING(SIZE(32)) ReportingPeriodicity ::= ENUMERATED { half-thousand-ms, -one-thousand-ms, + one-thousand-ms, two-thousand-ms, five-thousand-ms, ten-thousand-ms, @@ -4827,8 +4840,8 @@ S-NSSAI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } SNTriggered ::=ENUMERATED{ -true, -... + true, + ... } SpecialSubframeInfo-E-UTRA ::= SEQUENCE { @@ -4872,8 +4885,8 @@ SplitSRBsTypes ::= ENUMERATED {srb1, srb2, srb1and2, ...} SSBAreaCapacityValue-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBAreaCapacityValue-List-Item SSBAreaCapacityValue-List-Item ::= SEQUENCE { -sSBIndex INTEGER(0..63), -ssbAreaCapacityValue INTEGER (0..100), + sSBIndex INTEGER(0..63), + ssbAreaCapacityValue INTEGER (0..100), iE-Extensions ProtocolExtensionContainer { { SSBAreaCapacityValue-List-Item-ExtIEs} } OPTIONAL, ... } @@ -4888,9 +4901,9 @@ SSBAreaRadioResourceStatus-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBAr SSBAreaRadioResourceStatus-List-Item ::= SEQUENCE { sSBIndex INTEGER(0..63), -ssb-Area-DL-GBR-PRB-usage DL-GBR-PRB-usage, -ssb-Area-UL-GBR-PRB-usage UL-GBR-PRB-usage, -ssb-Area-dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage, + ssb-Area-DL-GBR-PRB-usage DL-GBR-PRB-usage, + ssb-Area-UL-GBR-PRB-usage UL-GBR-PRB-usage, + ssb-Area-dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage, ssb-Area-uL-non-GBR-PRB-usage UL-non-GBR-PRB-usage, ssb-Area-dL-Total-PRB-usage DL-Total-PRB-usage, ssb-Area-uL-Total-PRB-usage UL-Total-PRB-usage, @@ -5468,6 +5481,7 @@ UPTransportParametersItem ::= SEQUENCE { } UPTransportParametersItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + {ID id-QoS-Mapping-Information CRITICALITY reject EXTENSION QoS-Mapping-Information PRESENCE optional}, ... } diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn index 582aa11c7e..90fd1b5b4f 100644 --- a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn +++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.4 PDU Definitions -- ************************************************************** -- @@ -57,6 +57,7 @@ IMPORTS DRBsSubjectToStatusTransfer-List, DRBToQoSFlowMapping-List, E-UTRA-CGI, + ExpectedUEActivityBehaviour, ExpectedUEBehaviour, ExtendedUEIdentityIndexValue, FiveGCMobilityRestrictionListContainer, @@ -381,6 +382,7 @@ FROM XnAP-Containers id-UERadioCapabilityID, id-SCGIndicator, id-UESpecificDRX, + id-PDUSessionExpectedUEActivityBehaviour, @@ -412,8 +414,8 @@ HandoverRequest-IEs XNAP-PROTOCOL-IES ::= { { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE mandatory}| { ID id-UEContextRefAtSN-HORequest CRITICALITY ignore TYPE UEContextRefAtSN-HORequest PRESENCE optional }| { ID id-CHOinformation-Req CRITICALITY reject TYPE CHOinformation-Req PRESENCE optional }| -{ ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| -{ ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}| { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }| @@ -709,8 +711,8 @@ RetrieveUEContextResponse-IEs XNAP-PROTOCOL-IES ::= { { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }| { ID id-LocationReportingInformation CRITICALITY ignore TYPE LocationReportingInformation PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| -{ ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional}| -{ ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional}| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional}| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional}| { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE optional}| { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }| @@ -1041,6 +1043,7 @@ PDUSessionsToBeAdded-SNModRequest-Item ::= SEQUENCE { } PDUSessionsToBeAdded-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + {ID id-PDUSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional}, ... } @@ -1059,7 +1062,8 @@ PDUSessionsToBeModified-SNModRequest-Item ::= SEQUENCE { } PDUSessionsToBeModified-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { - {ID id-S-NSSAI CRITICALITY reject EXTENSION S-NSSAI PRESENCE optional}, + {ID id-S-NSSAI CRITICALITY reject EXTENSION S-NSSAI PRESENCE optional}| + {ID id-PDUSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional}, ... } @@ -2417,7 +2421,7 @@ ResourceStatusUpdate ::= SEQUENCE { ResourceStatusUpdate-IEs XNAP-PROTOCOL-IES ::= { { ID id-NGRAN-Node1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| { ID id-NGRAN-Node2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}| -{ ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult PRESENCE mandatory}, + { ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult PRESENCE mandatory}, ... } diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn index 1125ba3ca3..9ed82e503b 100644 --- a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn +++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V16.6.0 (2021-07) +-- 3GPP TS 38.423 V16.7.0 (2021-10) -- 9.3.3 Elementary Procedure Definitions -- ************************************************************** -- @@ -527,7 +527,7 @@ mobilitySettingsChange XNAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE MobilityChangeRequest SUCCESSFUL OUTCOME MobilityChangeAcknowledge UNSUCCESSFUL OUTCOME MobilityChangeFailure -PROCEDURE CODE id-mobilitySettingsChange + PROCEDURE CODE id-mobilitySettingsChange CRITICALITY reject } diff --git a/epan/dissectors/asn1/xnap/packet-xnap-template.c b/epan/dissectors/asn1/xnap/packet-xnap-template.c index 14baacc09d..334aaa0f0a 100644 --- a/epan/dissectors/asn1/xnap/packet-xnap-template.c +++ b/epan/dissectors/asn1/xnap/packet-xnap-template.c @@ -1,7 +1,7 @@ /* packet-xnap.c * Routines for dissecting NG-RAN Xn application protocol (XnAP) * 3GPP TS 38.423 packet dissection - * Copyright 2018-2019, Pascal Quantin + * Copyright 2018-2021, Pascal Quantin * * Wireshark - Network traffic analyzer * By Gerald Combs @@ -10,7 +10,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later * * Ref: - * 3GPP TS 38.423 V16.6.0 (2021-07) + * 3GPP TS 38.423 V16.7.0 (2021-10) */ #include "config.h" diff --git a/epan/dissectors/asn1/xnap/xnap.cnf b/epan/dissectors/asn1/xnap/xnap.cnf index cd2b61f45d..70a12dba4e 100644 --- a/epan/dissectors/asn1/xnap/xnap.cnf +++ b/epan/dissectors/asn1/xnap/xnap.cnf @@ -1,6 +1,6 @@ # xnap.cnf # xnap conformation file -# Copyright 2018-2020 Pascal Quantin +# Copyright 2018-2021 Pascal Quantin #.OPT PER @@ -1216,6 +1216,8 @@ id-PagingeDRXInformation ProtocolIE-ID id-CHO-MRDC-EarlyDataForwarding ProtocolIE-ID id-SCGIndicator ProtocolIE-ID id-UESpecificDRX ProtocolIE-ID +id-PDUSessionExpectedUEActivityBehaviour ProtocolIE-ID +id-QoS-Mapping-Information ProtocolIE-ID #.REGISTER @@ -1473,6 +1475,8 @@ DL-scheduling-PDCCH-CCE-usage N xnap.extension id-DL-schedul UL-scheduling-PDCCH-CCE-usage N xnap.extension id-UL-scheduling-PDCCH-CCE-usage SFN-Offset N xnap.extension id-SFN-Offset QoSMonitoringDisabled N xnap.extension id-QoSMonitoringDisabled +ExpectedUEActivityBehaviour N xnap.extension id-PDUSessionExpectedUEActivityBehaviour +QoS-Mapping-Information N xnap.extension id-QoS-Mapping-Information #XNAP-ELEMENTARY-PROCEDURE HandoverRequest N xnap.proc.imsg id-handoverPreparation diff --git a/epan/dissectors/packet-xnap.c b/epan/dissectors/packet-xnap.c index 696556e47a..d995143cf4 100644 --- a/epan/dissectors/packet-xnap.c +++ b/epan/dissectors/packet-xnap.c @@ -9,7 +9,7 @@ /* packet-xnap.c * Routines for dissecting NG-RAN Xn application protocol (XnAP) * 3GPP TS 38.423 packet dissection - * Copyright 2018-2019, Pascal Quantin + * Copyright 2018-2021, Pascal Quantin * * Wireshark - Network traffic analyzer * By Gerald Combs @@ -18,7 +18,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later * * Ref: - * 3GPP TS 38.423 V16.6.0 (2021-07) + * 3GPP TS 38.423 V16.7.0 (2021-10) */ #include "config.h" @@ -415,7 +415,9 @@ typedef enum _ProtocolIE_ID_enum { id_PagingeDRXInformation = 245, id_CHO_MRDC_EarlyDataForwarding = 246, id_SCGIndicator = 247, - id_UESpecificDRX = 248 + id_UESpecificDRX = 248, + id_PDUSessionExpectedUEActivityBehaviour = 249, + id_QoS_Mapping_Information = 250 } ProtocolIE_ID_enum; typedef enum _GlobalNG_RANNode_ID_enum { @@ -495,6 +497,7 @@ static int hf_xnap_DRB_Number_PDU = -1; /* DRB_Number */ static int hf_xnap_DRBsSubjectToStatusTransfer_List_PDU = -1; /* DRBsSubjectToStatusTransfer_List */ static int hf_xnap_DuplicationActivation_PDU = -1; /* DuplicationActivation */ static int hf_xnap_EndpointIPAddressAndPort_PDU = -1; /* EndpointIPAddressAndPort */ +static int hf_xnap_ExpectedUEActivityBehaviour_PDU = -1; /* ExpectedUEActivityBehaviour */ static int hf_xnap_ExpectedUEBehaviour_PDU = -1; /* ExpectedUEBehaviour */ static int hf_xnap_ExtendedRATRestrictionInformation_PDU = -1; /* ExtendedRATRestrictionInformation */ static int hf_xnap_ExtendedPacketDelayBudget_PDU = -1; /* ExtendedPacketDelayBudget */ @@ -562,6 +565,7 @@ static int hf_xnap_PDUSessionResourceSecondaryRATUsageList_PDU = -1; /* PDUSess static int hf_xnap_PDUSessionCommonNetworkInstance_PDU = -1; /* PDUSessionCommonNetworkInstance */ static int hf_xnap_PLMN_Identity_PDU = -1; /* PLMN_Identity */ static int hf_xnap_QoSFlows_List_PDU = -1; /* QoSFlows_List */ +static int hf_xnap_QoS_Mapping_Information_PDU = -1; /* QoS_Mapping_Information */ static int hf_xnap_QoSParaSetNotifyIndex_PDU = -1; /* QoSParaSetNotifyIndex */ static int hf_xnap_QosMonitoringRequest_PDU = -1; /* QosMonitoringRequest */ static int hf_xnap_QoSMonitoringDisabled_PDU = -1; /* QoSMonitoringDisabled */ @@ -1307,6 +1311,8 @@ static int hf_xnap_QoSFlowNotificationControlIndicationInfo_item = -1; /* QoSFl static int hf_xnap_notificationInformation = -1; /* T_notificationInformation */ static int hf_xnap_QoSFlows_List_item = -1; /* QoSFlow_Item */ static int hf_xnap_QoSFlows_List_withCause_item = -1; /* QoSFlowwithCause_Item */ +static int hf_xnap_dscp = -1; /* BIT_STRING_SIZE_6 */ +static int hf_xnap_flow_label = -1; /* BIT_STRING_SIZE_20 */ static int hf_xnap_QoSFlowsAdmitted_List_item = -1; /* QoSFlowsAdmitted_Item */ static int hf_xnap_QoSFlowsToBeSetup_List_item = -1; /* QoSFlowsToBeSetup_Item */ static int hf_xnap_e_RAB_ID = -1; /* E_RAB_ID */ @@ -2034,6 +2040,7 @@ static gint ett_xnap_QoSFlows_List = -1; static gint ett_xnap_QoSFlow_Item = -1; static gint ett_xnap_QoSFlows_List_withCause = -1; static gint ett_xnap_QoSFlowwithCause_Item = -1; +static gint ett_xnap_QoS_Mapping_Information = -1; static gint ett_xnap_QoSFlowsAdmitted_List = -1; static gint ett_xnap_QoSFlowsAdmitted_Item = -1; static gint ett_xnap_QoSFlowsToBeSetup_List = -1; @@ -2837,6 +2844,8 @@ static const value_string xnap_ProtocolIE_ID_vals[] = { { id_CHO_MRDC_EarlyDataForwarding, "id-CHO-MRDC-EarlyDataForwarding" }, { id_SCGIndicator, "id-SCGIndicator" }, { id_UESpecificDRX, "id-UESpecificDRX" }, + { id_PDUSessionExpectedUEActivityBehaviour, "id-PDUSessionExpectedUEActivityBehaviour" }, + { id_QoS_Mapping_Information, "id-QoS-Mapping-Information" }, { 0, NULL } }; @@ -13428,6 +13437,22 @@ dissect_xnap_QoSFlowNotificationControlIndicationInfo(tvbuff_t *tvb _U_, int off } +static const per_sequence_t QoS_Mapping_Information_sequence[] = { + { &hf_xnap_dscp , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_BIT_STRING_SIZE_6 }, + { &hf_xnap_flow_label , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_BIT_STRING_SIZE_20 }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoS_Mapping_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_xnap_QoS_Mapping_Information, QoS_Mapping_Information_sequence); + + return offset; +} + + static int dissect_xnap_QoSParaSetNotifyIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -18441,6 +18466,14 @@ static int dissect_EndpointIPAddressAndPort_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_ExpectedUEActivityBehaviour_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_ExpectedUEActivityBehaviour(tvb, offset, &asn1_ctx, tree, hf_xnap_ExpectedUEActivityBehaviour_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_ExpectedUEBehaviour_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -18977,6 +19010,14 @@ static int dissect_QoSFlows_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_QoS_Mapping_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_xnap_QoS_Mapping_Information(tvb, offset, &asn1_ctx, tree, hf_xnap_QoS_Mapping_Information_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_QoSParaSetNotifyIndex_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -20709,6 +20750,10 @@ void proto_register_xnap(void) { { "EndpointIPAddressAndPort", "xnap.EndpointIPAddressAndPort_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_ExpectedUEActivityBehaviour_PDU, + { "ExpectedUEActivityBehaviour", "xnap.ExpectedUEActivityBehaviour_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_ExpectedUEBehaviour_PDU, { "ExpectedUEBehaviour", "xnap.ExpectedUEBehaviour_element", FT_NONE, BASE_NONE, NULL, 0, @@ -20977,6 +21022,10 @@ void proto_register_xnap(void) { { "QoSFlows-List", "xnap.QoSFlows_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_xnap_QoS_Mapping_Information_PDU, + { "QoS-Mapping-Information", "xnap.QoS_Mapping_Information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_QoSParaSetNotifyIndex_PDU, { "QoSParaSetNotifyIndex", "xnap.QoSParaSetNotifyIndex", FT_UINT32, BASE_DEC, NULL, 0, @@ -23957,6 +24006,14 @@ void proto_register_xnap(void) { { "QoSFlowwithCause-Item", "xnap.QoSFlowwithCause_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_dscp, + { "dscp", "xnap.dscp", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_xnap_flow_label, + { "flow-label", "xnap.flow_label", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_20", HFILL }}, { &hf_xnap_QoSFlowsAdmitted_List_item, { "QoSFlowsAdmitted-Item", "xnap.QoSFlowsAdmitted_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -25759,6 +25816,7 @@ void proto_register_xnap(void) { &ett_xnap_QoSFlow_Item, &ett_xnap_QoSFlows_List_withCause, &ett_xnap_QoSFlowwithCause_Item, + &ett_xnap_QoS_Mapping_Information, &ett_xnap_QoSFlowsAdmitted_List, &ett_xnap_QoSFlowsAdmitted_Item, &ett_xnap_QoSFlowsToBeSetup_List, @@ -26342,6 +26400,8 @@ proto_reg_handoff_xnap(void) dissector_add_uint("xnap.extension", id_UL_scheduling_PDCCH_CCE_usage, create_dissector_handle(dissect_UL_scheduling_PDCCH_CCE_usage_PDU, proto_xnap)); dissector_add_uint("xnap.extension", id_SFN_Offset, create_dissector_handle(dissect_SFN_Offset_PDU, proto_xnap)); dissector_add_uint("xnap.extension", id_QoSMonitoringDisabled, create_dissector_handle(dissect_QoSMonitoringDisabled_PDU, proto_xnap)); + dissector_add_uint("xnap.extension", id_PDUSessionExpectedUEActivityBehaviour, create_dissector_handle(dissect_ExpectedUEActivityBehaviour_PDU, proto_xnap)); + dissector_add_uint("xnap.extension", id_QoS_Mapping_Information, create_dissector_handle(dissect_QoS_Mapping_Information_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_handoverPreparation, create_dissector_handle(dissect_HandoverRequest_PDU, proto_xnap)); dissector_add_uint("xnap.proc.sout", id_handoverPreparation, create_dissector_handle(dissect_HandoverRequestAcknowledge_PDU, proto_xnap)); dissector_add_uint("xnap.proc.uout", id_handoverPreparation, create_dissector_handle(dissect_HandoverPreparationFailure_PDU, proto_xnap));