diff options
Diffstat (limited to 'epan/dissectors')
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn | 2 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-Constants.asn | 18 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-Containers.asn | 2 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-IEs.asn | 49 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn | 30 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn | 2 | ||||
-rw-r--r-- | epan/dissectors/asn1/ranap/ranap.cnf | 7 | ||||
-rw-r--r-- | epan/dissectors/packet-ranap.c | 796 |
8 files changed, 604 insertions, 302 deletions
diff --git a/epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn b/epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn index 662d2770cf..0287dfc93b 100644 --- a/epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn +++ b/epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn @@ -1,6 +1,6 @@ -- RANAP-CommonDataTypes.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.5 Common Definitions diff --git a/epan/dissectors/asn1/ranap/RANAP-Constants.asn b/epan/dissectors/asn1/ranap/RANAP-Constants.asn index 2deaebfd12..46360d0f11 100644 --- a/epan/dissectors/asn1/ranap/RANAP-Constants.asn +++ b/epan/dissectors/asn1/ranap/RANAP-Constants.asn @@ -1,6 +1,6 @@ -- RANAP-Constants.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.6 Constant Definitions @@ -33,6 +33,7 @@ id-RelocationCancel INTEGER ::= 4 id-SRNS-ContextTransfer INTEGER ::= 5 id-SecurityModeControl INTEGER ::= 6 id-DataVolumeReport INTEGER ::= 7 +--WS Extension id-Not-Used-8 INTEGER ::= 8 id-Reset INTEGER ::= 9 id-RAB-ReleaseRequest INTEGER ::= 10 @@ -126,6 +127,7 @@ maxNrOfLAIs INTEGER ::= 8 maxSizeOfIMSInfo INTEGER ::= 32 maxnoofMDTPLMNs INTEGER ::= 16 maxAddPosSet INTEGER ::= 8 +maxnoofPLMNs INTEGER ::= 16 -- ************************************************************** -- @@ -134,6 +136,7 @@ maxAddPosSet INTEGER ::= 8 -- ************************************************************** id-AreaIdentity INTEGER ::= 0 +-- WS Extension id-Not-Used-1 INTEGER ::= 1 id-Not-Used-2 INTEGER ::= 2 id-CN-DomainIndicator INTEGER ::= 3 @@ -206,6 +209,7 @@ id-UE-ID INTEGER ::= 69 id-UL-GTP-PDU-SequenceNumber INTEGER ::= 70 id-RAB-FailedtoReportItem INTEGER ::= 71 id-RAB-FailedtoReportList INTEGER ::= 72 +-- WS Extension id-Not-Used-73 INTEGER ::= 73 id-Not-Used-74 INTEGER ::= 74 id-KeyStatus INTEGER ::= 75 @@ -234,8 +238,9 @@ id-LastKnownServiceArea INTEGER ::= 97 id-SRB-TrCH-Mapping INTEGER ::= 98 id-InterSystemInformation-TransparentContainer INTEGER ::= 99 id-NewBSS-To-OldBSS-Information INTEGER ::= 100 -id-Not-Used-101 INTEGER ::= 101 -id-Not-Used-102 INTEGER ::= 102 +-- WS extension +id-Not-Used-101 INTEGER ::= 101 +id-Not-Used-102 INTEGER ::= 102 id-SourceRNC-PDCP-context-info INTEGER ::= 103 id-InformationTransferID INTEGER ::= 104 id-SNA-Access-Information INTEGER ::= 105 @@ -365,7 +370,8 @@ id-SRVCC-Operation-Possible INTEGER ::= 228 id-CSG-Id-List INTEGER ::= 229 id-PSRABtobeReplaced INTEGER ::= 230 id-E-UTRAN-Service-Handover INTEGER ::= 231 -id-Not-Used-232 INTEGER ::= 232 +-- WS Extension +id-Not-Used-232 INTEGER ::= 232 id-UE-AggregateMaximumBitRate INTEGER ::= 233 id-CSG-Membership-Status INTEGER ::= 234 id-Cell-Access-Mode INTEGER ::= 235 @@ -379,7 +385,6 @@ id-Correlation-ID INTEGER ::= 242 id-IRAT-Measurement-Configuration INTEGER ::= 243 id-MDT-Configuration INTEGER ::= 244 id-Priority-Class-Indicator INTEGER ::= 245 -id-Not-Used-246 INTEGER ::= 246 id-RNSAPRelocationParameters INTEGER ::= 247 id-RABParametersList INTEGER ::= 248 id-Management-Based-MDT-Allowed INTEGER ::= 249 @@ -424,5 +429,8 @@ id-P-TMSI INTEGER ::= 287 id-RANAP-Message INTEGER ::= 288 id-PowerSavingIndicator INTEGER ::= 289 id-UE-Usage-Type INTEGER ::= 290 +id-DCN-ID INTEGER ::= 291 +id-UE-Application-Layer-Measurement-Configuration INTEGER ::= 292 +id-UE-Application-Layer-Measurement-Configuration-For-Relocation INTEGER ::= 293 END diff --git a/epan/dissectors/asn1/ranap/RANAP-Containers.asn b/epan/dissectors/asn1/ranap/RANAP-Containers.asn index 9a7881bbbc..f920a62af1 100644 --- a/epan/dissectors/asn1/ranap/RANAP-Containers.asn +++ b/epan/dissectors/asn1/ranap/RANAP-Containers.asn @@ -1,6 +1,6 @@ -- RANAP-Containers.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.7 Container Definitions diff --git a/epan/dissectors/asn1/ranap/RANAP-IEs.asn b/epan/dissectors/asn1/ranap/RANAP-IEs.asn index f60d02da0b..3b47d0122d 100644 --- a/epan/dissectors/asn1/ranap/RANAP-IEs.asn +++ b/epan/dissectors/asn1/ranap/RANAP-IEs.asn @@ -1,6 +1,6 @@ -- RANAP-IEs.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.4 Information Element Definitions @@ -53,6 +53,7 @@ IMPORTS maxSizeOfIMSInfo, maxnoofMDTPLMNs, maxAddPosSet, + maxnoofPLMNs, id-CN-DomainIndicator, id-MessageStructure, @@ -290,9 +291,32 @@ AlternativeRABConfigurationRequest ::= ENUMERATED{ ... } +UE-Application-Layer-Measurement-Configuration ::= SEQUENCE { + applicationLayerContainerForMeasurementConfiguration OCTET STRING ( SIZE (1..1000)), + areaScopeForUEApplicationLayerMeasurementConfiguration AreaScopeForUEApplicationLayerMeasurementConfiguration, + ... +} + +UE-Application-Layer-Measurement-Configuration-For-Relocation ::= SEQUENCE { + areaScopeForUEApplicationLayerMeasurementConfiguration AreaScopeForUEApplicationLayerMeasurementConfiguration, + traceReference TraceReference, + tracePropagationParameters TracePropagationParameters OPTIONAL, + traceCollectionEntityIPAddress TransportLayerAddress OPTIONAL, + ... +} + + APN ::= OCTET STRING (SIZE (1..255)) -- Reference: 23.003 +AreaScopeForUEApplicationLayerMeasurementConfiguration ::= CHOICE { + cellbased CellBased, + labased LABased, + rabased RABased, + plmn-area-based PLMNBased, + ... +} + AreaIdentity ::= CHOICE { sAI SAI, geographicalArea GeographicalArea, @@ -661,6 +685,9 @@ DataVolumeReportingIndication ::= ENUMERATED { DCH-ID ::= INTEGER (0..255) +DCN-ID ::= INTEGER (0..65535) + + DeliveryOfErroneousSDU ::= ENUMERATED { yes, no, @@ -717,7 +744,10 @@ E-DCH-MAC-d-Flow-ID ::= INTEGER (0.. maxNrOfEDCHMACdFlows-1) 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)) + } EncryptionAlgorithm ::= INTEGER { no-encryption (0), standard-UMTS-encryption-algorith-UEA1 (1), standard-UMTS-encryption-algorithm-UEA2 (2) } (0..15) @@ -1577,6 +1607,21 @@ LoggingDuration ::= ENUMERATED { +PLMNBased::= SEQUENCE { + plmnList PLMNList, + iE-Extensions ProtocolExtensionContainer { {PLMNBased-ExtIEs} } OPTIONAL, + ... +} + +PLMNBased-ExtIEs RANAP-PROTOCOL-EXTENSION ::= { + ... +} + +PLMNList ::= SEQUENCE (SIZE (1.. maxnoofPLMNs)) OF + PLMNidentity + + + PLMNidentity ::= TBCD-STRING (SIZE (3)) PLMNs-in-shared-network ::= SEQUENCE (SIZE (1..maxNrOfPLMNsSN)) OF diff --git a/epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn b/epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn index 4301328952..840fd6953d 100644 --- a/epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn +++ b/epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn @@ -1,6 +1,6 @@ -- RANAP-PDU-Contents.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.3 PDU Definitions @@ -28,6 +28,8 @@ BEGIN IMPORTS AccuracyFulfilmentIndicator, + UE-Application-Layer-Measurement-Configuration, + UE-Application-Layer-Measurement-Configuration-For-Relocation, APN, BroadcastAssistanceDataDecipheringKeys, LocationRelatedDataRequestType, @@ -190,7 +192,8 @@ IMPORTS P-TMSI, BarometricPressure, CivicAddress, - UE-Usage-Type + UE-Usage-Type, + DCN-ID FROM RANAP-IEs @@ -214,6 +217,8 @@ FROM RANAP-Containers maxnoofMulticastServicesPerUE, id-AccuracyFulfilmentIndicator, + id-UE-Application-Layer-Measurement-Configuration, + id-UE-Application-Layer-Measurement-Configuration-For-Relocation, id-APN, id-AreaIdentity, id-Alt-RAB-Parameters, @@ -441,7 +446,8 @@ FROM RANAP-Containers id-PowerSavingIndicator, id-BarometricPressure, id-CivicAddress, - id-UE-Usage-Type + id-UE-Usage-Type, + id-DCN-ID FROM RANAP-Constants; @@ -595,7 +601,10 @@ RelocationRequiredExtensions RANAP-PROTOCOL-EXTENSION ::= { -- Extension for Release 9 to communicate to the CN the hybrid access status of the target cell -- { ID id-Cell-Access-Mode CRITICALITY reject EXTENSION Cell-Access-Mode PRESENCE optional} | -- Extension for Release 11 for rSRVCC operation -- - { ID id-RSRVCC-HO-Indication CRITICALITY reject EXTENSION RSRVCC-HO-Indication PRESENCE optional}, + { ID id-RSRVCC-HO-Indication CRITICALITY reject EXTENSION RSRVCC-HO-Indication PRESENCE optional}| +-- Extension for Release 14 to support QoE function -- + {ID id-UE-Application-Layer-Measurement-Configuration-For-Relocation CRITICALITY ignore EXTENSION UE-Application-Layer-Measurement-Configuration-For-Relocation PRESENCE optional}, + ... } @@ -795,7 +804,10 @@ RelocationRequestExtensions RANAP-PROTOCOL-EXTENSION ::= { { ID id-MSISDN CRITICALITY ignore EXTENSION MSISDN PRESENCE optional}| -- Extension for Release 11 to support rSRVCC in case of network sharing – { ID id-AnchorPLMN-ID CRITICALITY ignore EXTENSION PLMNidentity PRESENCE optional}| - { ID id-PowerSavingIndicator CRITICALITY ignore EXTENSION PowerSavingIndicator PRESENCE optional}, + { ID id-PowerSavingIndicator CRITICALITY ignore EXTENSION PowerSavingIndicator PRESENCE optional}| +-- Extension for Release 14 to support QoE function -- + {ID id-UE-Application-Layer-Measurement-Configuration-For-Relocation CRITICALITY ignore EXTENSION UE-Application-Layer-Measurement-Configuration-For-Relocation PRESENCE optional}, + ... } @@ -1824,7 +1836,9 @@ CN-InvokeTraceExtensions RANAP-PROTOCOL-EXTENSION ::= { -- Extension for Release 10 to support MDT-- { ID id-MDT-Configuration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional}| -- Extension for Release 10 to support MDT-- - { ID id-Trace-Collection-Entity-IP-Addess CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}, + { ID id-Trace-Collection-Entity-IP-Addess CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}| +-- Extension for Release 14 to support QoE function -- + {ID id-UE-Application-Layer-Measurement-Configuration CRITICALITY ignore EXTENSION UE-Application-Layer-Measurement-Configuration PRESENCE optional}, ... } @@ -1999,7 +2013,9 @@ InitialUE-MessageExtensions RANAP-PROTOCOL-EXTENSION ::= { { ID id-LHN-ID CRITICALITY ignore EXTENSION LHN-ID PRESENCE optional}| -- Extension for Release 13 to support DCN -- { ID id-SGSN-Group-Identity CRITICALITY ignore EXTENSION SGSN-Group-Identity PRESENCE optional}| - { ID id-UE-Usage-Type CRITICALITY ignore EXTENSION UE-Usage-Type PRESENCE optional}, + { ID id-UE-Usage-Type CRITICALITY ignore EXTENSION UE-Usage-Type PRESENCE optional}| + { ID id-DCN-ID CRITICALITY ignore EXTENSION DCN-ID PRESENCE optional}, + ... } diff --git a/epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn b/epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn index 4f5b38bc4e..92d4b0f276 100644 --- a/epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn +++ b/epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn @@ -1,6 +1,6 @@ -- RANAP-PDU-Descriptions.asn -- --- 3GPP TS 25.413 V13.2.0 (2016-06) +-- 3GPP TS 25.413 V14.0.0 (2017-03) -- http://www.3gpp.org/ftp/Specs/html-info/25413.htm -- -- 9.3.2 Elementary Procedure Definitions diff --git a/epan/dissectors/asn1/ranap/ranap.cnf b/epan/dissectors/asn1/ranap/ranap.cnf index bdbc463291..0161440bcf 100644 --- a/epan/dissectors/asn1/ranap/ranap.cnf +++ b/epan/dissectors/asn1/ranap/ranap.cnf @@ -762,6 +762,9 @@ id-P-TMSI ProtocolIE-ID id-RANAP-Message ProtocolIE-ID id-PowerSavingIndicator ProtocolIE-ID id-UE-Usage-Type ProtocolIE-ID +id-DCN-ID ProtocolIE-ID +id-UE-Application-Layer-Measurement-Configuration ProtocolIE-ID +id-UE-Application-Layer-Measurement-Configuration-For-Relocation ProtocolIE-ID #.END #.REGISTER @@ -1062,7 +1065,9 @@ BarometricPressure N ranap.extension id-B Additional-PositioningDataSet N ranap.extension id-Additional-PositioningDataSet CivicAddress N ranap.extension id-CivicAddress PowerSavingIndicator N ranap.extension id-PowerSavingIndicator - +DCN-ID N ranap.extension id-DCN-ID +UE-Application-Layer-Measurement-Configuration N ranap.extension id-UE-Application-Layer-Measurement-Configuration +UE-Application-Layer-Measurement-Configuration-For-Relocation N ranap.extension id-UE-Application-Layer-Measurement-Configuration-For-Relocation #RANAP-ELEMENTARY-PROCEDURE Iu-ReleaseCommand N ranap.proc.imsg id-Iu-Release diff --git a/epan/dissectors/packet-ranap.c b/epan/dissectors/packet-ranap.c index 274bcc49a3..a45cc3ad8e 100644 --- a/epan/dissectors/packet-ranap.c +++ b/epan/dissectors/packet-ranap.c @@ -104,6 +104,7 @@ #define maxSizeOfIMSInfo 32 #define maxnoofMDTPLMNs 16 #define maxAddPosSet 8 +#define maxnoofPLMNs 16 typedef enum _ProcedureCode_enum { id_RAB_Assignment = 0, @@ -405,7 +406,6 @@ typedef enum _ProtocolIE_ID_enum { id_IRAT_Measurement_Configuration = 243, id_MDT_Configuration = 244, id_Priority_Class_Indicator = 245, - id_Not_Used_246 = 246, id_RNSAPRelocationParameters = 247, id_RABParametersList = 248, id_Management_Based_MDT_Allowed = 249, @@ -449,7 +449,10 @@ typedef enum _ProtocolIE_ID_enum { id_P_TMSI = 287, id_RANAP_Message = 288, id_PowerSavingIndicator = 289, - id_UE_Usage_Type = 290 + id_UE_Usage_Type = 290, + id_DCN_ID = 291, + id_UE_Application_Layer_Measurement_Configuration = 292, + id_UE_Application_Layer_Measurement_Configuration_For_Relocation = 293 } ProtocolIE_ID_enum; /*--- End of included file: packet-ranap-val.h ---*/ @@ -483,6 +486,8 @@ static int hf_ranap_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_PDU = -1; / static int hf_ranap_Alt_RAB_Parameter_ExtendedMaxBitrateInf_PDU = -1; /* Alt_RAB_Parameter_ExtendedMaxBitrateInf */ static int hf_ranap_Alt_RAB_Parameter_SupportedMaxBitrateInf_PDU = -1; /* Alt_RAB_Parameter_SupportedMaxBitrateInf */ static int hf_ranap_AlternativeRABConfigurationRequest_PDU = -1; /* AlternativeRABConfigurationRequest */ +static int hf_ranap_UE_Application_Layer_Measurement_Configuration_PDU = -1; /* UE_Application_Layer_Measurement_Configuration */ +static int hf_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation_PDU = -1; /* UE_Application_Layer_Measurement_Configuration_For_Relocation */ static int hf_ranap_APN_PDU = -1; /* APN */ static int hf_ranap_AreaIdentity_PDU = -1; /* AreaIdentity */ static int hf_ranap_Ass_RAB_Parameters_PDU = -1; /* Ass_RAB_Parameters */ @@ -507,6 +512,7 @@ static int hf_ranap_CSFB_Information_PDU = -1; /* CSFB_Information */ static int hf_ranap_CSG_Id_PDU = -1; /* CSG_Id */ static int hf_ranap_CSG_Id_List_PDU = -1; /* CSG_Id_List */ static int hf_ranap_CSG_Membership_Status_PDU = -1; /* CSG_Membership_Status */ +static int hf_ranap_DCN_ID_PDU = -1; /* DCN_ID */ static int hf_ranap_DeltaRAListofIdleModeUEs_PDU = -1; /* DeltaRAListofIdleModeUEs */ static int hf_ranap_DRX_CycleLengthCoefficient_PDU = -1; /* DRX_CycleLengthCoefficient */ static int hf_ranap_EARFCN_Extended_PDU = -1; /* EARFCN_Extended */ @@ -866,6 +872,15 @@ static int hf_ranap_Alt_RAB_Parameter_MaxBitrateList_item = -1; /* MaxBitrate * static int hf_ranap_altSupportedMaxBitrateType = -1; /* Alt_RAB_Parameter_MaxBitrateType */ static int hf_ranap_altSupportedMaxBitrates = -1; /* Alt_RAB_Parameter_SupportedMaxBitrates */ static int hf_ranap_Alt_RAB_Parameter_SupportedMaxBitrates_item = -1; /* SupportedRAB_ParameterBitrateList */ +static int hf_ranap_applicationLayerContainerForMeasurementConfiguration = -1; /* OCTET_STRING_SIZE_1_1000 */ +static int hf_ranap_areaScopeForUEApplicationLayerMeasurementConfiguration = -1; /* AreaScopeForUEApplicationLayerMeasurementConfiguration */ +static int hf_ranap_traceReference = -1; /* TraceReference */ +static int hf_ranap_tracePropagationParameters = -1; /* TracePropagationParameters */ +static int hf_ranap_traceCollectionEntityIPAddress = -1; /* TransportLayerAddress */ +static int hf_ranap_cellbased = -1; /* CellBased */ +static int hf_ranap_labased = -1; /* LABased */ +static int hf_ranap_rabased = -1; /* RABased */ +static int hf_ranap_plmn_area_based = -1; /* PLMNBased */ static int hf_ranap_sAI = -1; /* SAI */ static int hf_ranap_geographicalArea = -1; /* GeographicalArea */ static int hf_ranap_assMaxBitrateInf = -1; /* Ass_RAB_Parameter_MaxBitrateList */ @@ -916,6 +931,8 @@ static int hf_ranap_NewRAListofIdleModeUEs_item = -1; /* RAC */ static int hf_ranap_RAListwithNoIdleModeUEsAnyMore_item = -1; /* RAC */ static int hf_ranap_macroENB_ID = -1; /* BIT_STRING_SIZE_20 */ static int hf_ranap_homeENB_ID = -1; /* BIT_STRING_SIZE_28 */ +static int hf_ranap_short_macroENB_ID = -1; /* BIT_STRING_SIZE_18 */ +static int hf_ranap_long_macroENB_ID = -1; /* BIT_STRING_SIZE_21 */ static int hf_ranap_permittedAlgorithms = -1; /* PermittedEncryptionAlgorithms */ static int hf_ranap_key = -1; /* EncryptionKey */ static int hf_ranap_iMEIlist = -1; /* IMEIList */ @@ -1011,10 +1028,7 @@ static int hf_ranap_m6_links_to_log = -1; /* Links_to_log */ static int hf_ranap_m7_period = -1; /* M7_Period */ static int hf_ranap_m7_links_to_log = -1; /* Links_to_log */ static int hf_ranap_MBMSIPMulticastAddressandAPNRequest_item = -1; /* TMGI */ -static int hf_ranap_cellbased = -1; /* CellBased */ -static int hf_ranap_labased = -1; /* LABased */ -static int hf_ranap_rabased = -1; /* RABased */ -static int hf_ranap_plmn_area_based = -1; /* NULL */ +static int hf_ranap_plmn_area_based_01 = -1; /* NULL */ static int hf_ranap_mdtActivation = -1; /* MDT_Activation */ static int hf_ranap_mdtAreaScope = -1; /* MDTAreaScope */ static int hf_ranap_mdtMode = -1; /* MDTMode */ @@ -1037,6 +1051,8 @@ static int hf_ranap_laiList = -1; /* LAI_List */ static int hf_ranap_LAI_List_item = -1; /* LAI */ static int hf_ranap_loggingInterval = -1; /* LoggingInterval */ static int hf_ranap_loggingDuration = -1; /* LoggingDuration */ +static int hf_ranap_plmnList = -1; /* PLMNList */ +static int hf_ranap_PLMNList_item = -1; /* PLMNidentity */ static int hf_ranap_PLMNs_in_shared_network_item = -1; /* PLMNs_in_shared_network_item */ static int hf_ranap_lA_LIST = -1; /* LA_LIST */ static int hf_ranap_PositioningDataSet_item = -1; /* PositioningMethodAndUsage */ @@ -1098,7 +1114,6 @@ static int hf_ranap_rIMRoutingAddress = -1; /* RIMRoutingAddress */ static int hf_ranap_targetRNC_ID = -1; /* TargetRNC_ID */ static int hf_ranap_gERAN_Cell_ID = -1; /* GERAN_Cell_ID */ static int hf_ranap_targeteNB_ID = -1; /* TargetENB_ID */ -static int hf_ranap_traceReference = -1; /* TraceReference */ static int hf_ranap_traceActivationIndicator = -1; /* T_traceActivationIndicator */ static int hf_ranap_equipmentsToBeTraced = -1; /* EquipmentsToBeTraced */ static int hf_ranap_rabParmetersList = -1; /* RABParametersList */ @@ -1159,7 +1174,6 @@ static int hf_ranap_tMSI = -1; /* TMSI */ static int hf_ranap_p_TMSI = -1; /* P_TMSI */ static int hf_ranap_serviceID = -1; /* OCTET_STRING_SIZE_3 */ static int hf_ranap_ue_identity = -1; /* UE_ID */ -static int hf_ranap_tracePropagationParameters = -1; /* TracePropagationParameters */ static int hf_ranap_traceRecordingSessionReference = -1; /* TraceRecordingSessionReference */ static int hf_ranap_traceDepth = -1; /* TraceDepth */ static int hf_ranap_listOfInterfacesToTrace = -1; /* ListOfInterfacesToTrace */ @@ -1297,6 +1311,9 @@ static gint ett_ranap_Alt_RAB_Parameter_MaxBitrates = -1; static gint ett_ranap_Alt_RAB_Parameter_MaxBitrateList = -1; static gint ett_ranap_Alt_RAB_Parameter_SupportedMaxBitrateInf = -1; static gint ett_ranap_Alt_RAB_Parameter_SupportedMaxBitrates = -1; +static gint ett_ranap_UE_Application_Layer_Measurement_Configuration = -1; +static gint ett_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation = -1; +static gint ett_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration = -1; static gint ett_ranap_AreaIdentity = -1; static gint ett_ranap_Ass_RAB_Parameters = -1; static gint ett_ranap_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList = -1; @@ -1389,6 +1406,8 @@ static gint ett_ranap_PermittedIntegrityProtectionAlgorithms = -1; static gint ett_ranap_LABased = -1; static gint ett_ranap_LAI_List = -1; static gint ett_ranap_LoggedMDT = -1; +static gint ett_ranap_PLMNBased = -1; +static gint ett_ranap_PLMNList = -1; static gint ett_ranap_PLMNs_in_shared_network = -1; static gint ett_ranap_PLMNs_in_shared_network_item = -1; static gint ett_ranap_PositioningDataSet = -1; @@ -2066,7 +2085,6 @@ static const value_string ranap_ProtocolIE_ID_vals[] = { { id_IRAT_Measurement_Configuration, "id-IRAT-Measurement-Configuration" }, { id_MDT_Configuration, "id-MDT-Configuration" }, { id_Priority_Class_Indicator, "id-Priority-Class-Indicator" }, - { id_Not_Used_246, "id-Not-Used-246" }, { id_RNSAPRelocationParameters, "id-RNSAPRelocationParameters" }, { id_RABParametersList, "id-RABParametersList" }, { id_Management_Based_MDT_Allowed, "id-Management-Based-MDT-Allowed" }, @@ -2111,6 +2129,9 @@ static const value_string ranap_ProtocolIE_ID_vals[] = { { id_RANAP_Message, "id-RANAP-Message" }, { id_PowerSavingIndicator, "id-PowerSavingIndicator" }, { id_UE_Usage_Type, "id-UE-Usage-Type" }, + { id_DCN_ID, "id-DCN-ID" }, + { id_UE_Application_Layer_Measurement_Configuration, "id-UE-Application-Layer-Measurement-Configuration" }, + { id_UE_Application_Layer_Measurement_Configuration_For_Relocation, "id-UE-Application-Layer-Measurement-Configuration-For-Relocation" }, { 0, NULL } }; @@ -2939,6 +2960,356 @@ dissect_ranap_AlternativeRABConfigurationRequest(tvbuff_t *tvb _U_, int offset _ static int +dissect_ranap_OCTET_STRING_SIZE_1_1000(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, 1000, FALSE, NULL); + + return offset; +} + + + +static int +dissect_ranap_Cell_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, 268435455U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t CellIdList_sequence_of[1] = { + { &hf_ranap_CellIdList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_Cell_Id }, +}; + +static int +dissect_ranap_CellIdList(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_ranap_CellIdList, CellIdList_sequence_of, + 1, maxNrOfCellIds, FALSE); + + return offset; +} + + +static const per_sequence_t CellBased_sequence[] = { + { &hf_ranap_cellIdList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_CellIdList }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_CellBased(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_ranap_CellBased, CellBased_sequence); + + return offset; +} + + +static const per_sequence_t LAI_List_sequence_of[1] = { + { &hf_ranap_LAI_List_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_LAI }, +}; + +static int +dissect_ranap_LAI_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_ranap_LAI_List, LAI_List_sequence_of, + 1, maxNrOfLAIs, FALSE); + + return offset; +} + + +static const per_sequence_t LABased_sequence[] = { + { &hf_ranap_laiList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_LAI_List }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_LABased(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_ranap_LABased, LABased_sequence); + + return offset; +} + + +static const per_sequence_t RAI_sequence[] = { + { &hf_ranap_lAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_LAI }, + { &hf_ranap_rAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_RAC }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_RAI(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_ranap_RAI, RAI_sequence); + + return offset; +} + + +static const per_sequence_t RAI_List_sequence_of[1] = { + { &hf_ranap_RAI_List_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_RAI }, +}; + +static int +dissect_ranap_RAI_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_ranap_RAI_List, RAI_List_sequence_of, + 1, maxNrOfRAIs, FALSE); + + return offset; +} + + +static const per_sequence_t RABased_sequence[] = { + { &hf_ranap_raiList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_RAI_List }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_RABased(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_ranap_RABased, RABased_sequence); + + return offset; +} + + +static const per_sequence_t PLMNList_sequence_of[1] = { + { &hf_ranap_PLMNList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_PLMNidentity }, +}; + +static int +dissect_ranap_PLMNList(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_ranap_PLMNList, PLMNList_sequence_of, + 1, maxnoofPLMNs, FALSE); + + return offset; +} + + +static const per_sequence_t PLMNBased_sequence[] = { + { &hf_ranap_plmnList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_PLMNList }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_PLMNBased(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_ranap_PLMNBased, PLMNBased_sequence); + + return offset; +} + + +static const value_string ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration_vals[] = { + { 0, "cellbased" }, + { 1, "labased" }, + { 2, "rabased" }, + { 3, "plmn-area-based" }, + { 0, NULL } +}; + +static const per_choice_t AreaScopeForUEApplicationLayerMeasurementConfiguration_choice[] = { + { 0, &hf_ranap_cellbased , ASN1_EXTENSION_ROOT , dissect_ranap_CellBased }, + { 1, &hf_ranap_labased , ASN1_EXTENSION_ROOT , dissect_ranap_LABased }, + { 2, &hf_ranap_rabased , ASN1_EXTENSION_ROOT , dissect_ranap_RABased }, + { 3, &hf_ranap_plmn_area_based, ASN1_EXTENSION_ROOT , dissect_ranap_PLMNBased }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration(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_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration, AreaScopeForUEApplicationLayerMeasurementConfiguration_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UE_Application_Layer_Measurement_Configuration_sequence[] = { + { &hf_ranap_applicationLayerContainerForMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_OCTET_STRING_SIZE_1_1000 }, + { &hf_ranap_areaScopeForUEApplicationLayerMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_UE_Application_Layer_Measurement_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_ranap_UE_Application_Layer_Measurement_Configuration, UE_Application_Layer_Measurement_Configuration_sequence); + + return offset; +} + + + +static int +dissect_ranap_TraceReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 2, 3, FALSE, NULL); + + return offset; +} + + + +static int +dissect_ranap_TraceRecordingSessionReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + +static const value_string ranap_TraceDepth_vals[] = { + { 0, "minimum" }, + { 1, "medium" }, + { 2, "maximum" }, + { 0, NULL } +}; + + +static int +dissect_ranap_TraceDepth(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 ranap_T_interface_vals[] = { + { 0, "iu-cs" }, + { 1, "iu-ps" }, + { 2, "iur" }, + { 3, "iub" }, + { 4, "uu" }, + { 0, NULL } +}; + + +static int +dissect_ranap_T_interface(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 InterfacesToTraceItem_sequence[] = { + { &hf_ranap_interface , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_T_interface }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_InterfacesToTraceItem(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_ranap_InterfacesToTraceItem, InterfacesToTraceItem_sequence); + + return offset; +} + + +static const per_sequence_t ListOfInterfacesToTrace_sequence_of[1] = { + { &hf_ranap_ListOfInterfacesToTrace_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_InterfacesToTraceItem }, +}; + +static int +dissect_ranap_ListOfInterfacesToTrace(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_ranap_ListOfInterfacesToTrace, ListOfInterfacesToTrace_sequence_of, + 1, maxNrOfInterfaces, FALSE); + + return offset; +} + + +static const per_sequence_t TracePropagationParameters_sequence[] = { + { &hf_ranap_traceRecordingSessionReference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceRecordingSessionReference }, + { &hf_ranap_traceDepth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceDepth }, + { &hf_ranap_listOfInterfacesToTrace, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ListOfInterfacesToTrace }, + { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_TracePropagationParameters(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_ranap_TracePropagationParameters, TracePropagationParameters_sequence); + + return offset; +} + + + +static int +dissect_ranap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 310 "./asn1/ranap/ranap.cnf" + tvbuff_t *parameter_tvb=NULL; + proto_item *item; + proto_tree *subtree, *nsap_tree; + gint tvb_len; + + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 160, TRUE, ¶meter_tvb, NULL); + + if (!parameter_tvb) + return offset; + /* Get the length */ + tvb_len = tvb_reported_length(parameter_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_ranap_TransportLayerAddress); + if (tvb_len==4){ + /* IPv4 */ + proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_ipv4, parameter_tvb, 0, tvb_len, ENC_BIG_ENDIAN); + } + if (tvb_len==16){ + /* IPv6 */ + proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_ipv6, parameter_tvb, 0, tvb_len, ENC_NA); + } + /* Length will be 25 if optional bearerId is present */ + if ((tvb_len==20) || (tvb_len==25)) { + item = proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_nsap, parameter_tvb, 0, 20, ENC_NA); + nsap_tree = proto_item_add_subtree(item, ett_ranap_TransportLayerAddress_nsap); + dissect_nsap(parameter_tvb, 0, tvb_len, nsap_tree); + } + + + + return offset; +} + + +static const per_sequence_t UE_Application_Layer_Measurement_Configuration_For_Relocation_sequence[] = { + { &hf_ranap_areaScopeForUEApplicationLayerMeasurementConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration }, + { &hf_ranap_traceReference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceReference }, + { &hf_ranap_tracePropagationParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_TracePropagationParameters }, + { &hf_ranap_traceCollectionEntityIPAddress, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_TransportLayerAddress }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation(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_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation, UE_Application_Layer_Measurement_Configuration_For_Relocation_sequence); + + return offset; +} + + + +static int dissect_ranap_APN(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, 255, FALSE, NULL); @@ -3721,45 +4092,6 @@ dissect_ranap_Cell_Access_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int -dissect_ranap_Cell_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, 268435455U, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t CellIdList_sequence_of[1] = { - { &hf_ranap_CellIdList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_Cell_Id }, -}; - -static int -dissect_ranap_CellIdList(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_ranap_CellIdList, CellIdList_sequence_of, - 1, maxNrOfCellIds, FALSE); - - return offset; -} - - -static const per_sequence_t CellBased_sequence[] = { - { &hf_ranap_cellIdList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_CellIdList }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_CellBased(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_ranap_CellBased, CellBased_sequence); - - return offset; -} - - - -static int dissect_ranap_Cell_Capacity_Class_Value(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, 100U, NULL, TRUE); @@ -4273,6 +4605,16 @@ dissect_ranap_DCH_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } + +static int +dissect_ranap_DCN_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + static const value_string ranap_DeliveryOfErroneousSDU_vals[] = { { 0, "yes" }, { 1, "no" }, @@ -4440,15 +4782,39 @@ dissect_ranap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } + +static int +dissect_ranap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 18, 18, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_ranap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 21, 21, FALSE, NULL, NULL); + + return offset; +} + + static const value_string ranap_ENB_ID_vals[] = { { 0, "macroENB-ID" }, { 1, "homeENB-ID" }, + { 2, "short-macroENB-ID" }, + { 3, "long-macroENB-ID" }, { 0, NULL } }; static const per_choice_t ENB_ID_choice[] = { { 0, &hf_ranap_macroENB_ID , ASN1_EXTENSION_ROOT , dissect_ranap_BIT_STRING_SIZE_20 }, { 1, &hf_ranap_homeENB_ID , ASN1_EXTENSION_ROOT , dissect_ranap_BIT_STRING_SIZE_28 }, + { 2, &hf_ranap_short_macroENB_ID, ASN1_NOT_EXTENSION_ROOT, dissect_ranap_BIT_STRING_SIZE_18 }, + { 3, &hf_ranap_long_macroENB_ID, ASN1_NOT_EXTENSION_ROOT, dissect_ranap_BIT_STRING_SIZE_21 }, { 0, NULL, 0, NULL } }; @@ -5296,16 +5662,6 @@ dissect_ranap_InformationTransferID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } - -static int -dissect_ranap_TraceReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 2, 3, FALSE, NULL); - - return offset; -} - - static const value_string ranap_T_traceActivationIndicator_vals[] = { { 0, "activated" }, { 1, "deactivated" }, @@ -5732,54 +6088,6 @@ dissect_ranap_Links_to_log(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const value_string ranap_T_interface_vals[] = { - { 0, "iu-cs" }, - { 1, "iu-ps" }, - { 2, "iur" }, - { 3, "iub" }, - { 4, "uu" }, - { 0, NULL } -}; - - -static int -dissect_ranap_T_interface(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 InterfacesToTraceItem_sequence[] = { - { &hf_ranap_interface , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_T_interface }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_InterfacesToTraceItem(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_ranap_InterfacesToTraceItem, InterfacesToTraceItem_sequence); - - return offset; -} - - -static const per_sequence_t ListOfInterfacesToTrace_sequence_of[1] = { - { &hf_ranap_ListOfInterfacesToTrace_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_InterfacesToTraceItem }, -}; - -static int -dissect_ranap_ListOfInterfacesToTrace(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_ranap_ListOfInterfacesToTrace, ListOfInterfacesToTrace_sequence_of, - 1, maxNrOfInterfaces, FALSE); - - return offset; -} - - static const value_string ranap_RequestedLocationRelatedDataType_vals[] = { { 0, "decipheringKeysUEBasedOTDOA" }, { 1, "decipheringKeysAssistedGPS" }, @@ -6388,80 +6696,6 @@ dissect_ranap_MDT_Activation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t LAI_List_sequence_of[1] = { - { &hf_ranap_LAI_List_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_LAI }, -}; - -static int -dissect_ranap_LAI_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_ranap_LAI_List, LAI_List_sequence_of, - 1, maxNrOfLAIs, FALSE); - - return offset; -} - - -static const per_sequence_t LABased_sequence[] = { - { &hf_ranap_laiList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_LAI_List }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_LABased(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_ranap_LABased, LABased_sequence); - - return offset; -} - - -static const per_sequence_t RAI_sequence[] = { - { &hf_ranap_lAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_LAI }, - { &hf_ranap_rAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_RAC }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_RAI(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_ranap_RAI, RAI_sequence); - - return offset; -} - - -static const per_sequence_t RAI_List_sequence_of[1] = { - { &hf_ranap_RAI_List_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_ranap_RAI }, -}; - -static int -dissect_ranap_RAI_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_ranap_RAI_List, RAI_List_sequence_of, - 1, maxNrOfRAIs, FALSE); - - return offset; -} - - -static const per_sequence_t RABased_sequence[] = { - { &hf_ranap_raiList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_RAI_List }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_RABased(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_ranap_RABased, RABased_sequence); - - return offset; -} - - static const value_string ranap_MDTAreaScope_vals[] = { { 0, "cellbased" }, { 1, "labased" }, @@ -6474,7 +6708,7 @@ static const per_choice_t MDTAreaScope_choice[] = { { 0, &hf_ranap_cellbased , ASN1_EXTENSION_ROOT , dissect_ranap_CellBased }, { 1, &hf_ranap_labased , ASN1_EXTENSION_ROOT , dissect_ranap_LABased }, { 2, &hf_ranap_rabased , ASN1_EXTENSION_ROOT , dissect_ranap_RABased }, - { 3, &hf_ranap_plmn_area_based, ASN1_EXTENSION_ROOT , dissect_ranap_NULL }, + { 3, &hf_ranap_plmn_area_based_01, ASN1_EXTENSION_ROOT , dissect_ranap_NULL }, { 0, NULL, 0, NULL } }; @@ -7876,50 +8110,6 @@ dissect_ranap_UE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } - -static int -dissect_ranap_TraceRecordingSessionReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 65535U, NULL, FALSE); - - return offset; -} - - -static const value_string ranap_TraceDepth_vals[] = { - { 0, "minimum" }, - { 1, "medium" }, - { 2, "maximum" }, - { 0, NULL } -}; - - -static int -dissect_ranap_TraceDepth(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 TracePropagationParameters_sequence[] = { - { &hf_ranap_traceRecordingSessionReference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceRecordingSessionReference }, - { &hf_ranap_traceDepth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceDepth }, - { &hf_ranap_listOfInterfacesToTrace, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ListOfInterfacesToTrace }, - { &hf_ranap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_ranap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_ranap_TracePropagationParameters(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_ranap_TracePropagationParameters, TracePropagationParameters_sequence); - - return offset; -} - - static const per_sequence_t TraceInformation_sequence[] = { { &hf_ranap_traceReference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_TraceReference }, { &hf_ranap_ue_identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_ranap_UE_ID }, @@ -8693,44 +8883,6 @@ dissect_ranap_TraceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int -dissect_ranap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 310 "./asn1/ranap/ranap.cnf" - tvbuff_t *parameter_tvb=NULL; - proto_item *item; - proto_tree *subtree, *nsap_tree; - gint tvb_len; - - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, NULL); - - if (!parameter_tvb) - return offset; - /* Get the length */ - tvb_len = tvb_reported_length(parameter_tvb); - subtree = proto_item_add_subtree(actx->created_item, ett_ranap_TransportLayerAddress); - if (tvb_len==4){ - /* IPv4 */ - proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_ipv4, parameter_tvb, 0, tvb_len, ENC_BIG_ENDIAN); - } - if (tvb_len==16){ - /* IPv6 */ - proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_ipv6, parameter_tvb, 0, tvb_len, ENC_NA); - } - /* Length will be 25 if optional bearerId is present */ - if ((tvb_len==20) || (tvb_len==25)) { - item = proto_tree_add_item(subtree, hf_ranap_transportLayerAddress_nsap, parameter_tvb, 0, 20, ENC_NA); - nsap_tree = proto_item_add_subtree(item, ett_ranap_TransportLayerAddress_nsap); - dissect_nsap(parameter_tvb, 0, tvb_len, nsap_tree); - } - - - - return offset; -} - - - -static int dissect_ranap_TriggerID(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, 3, 22, FALSE, NULL); @@ -11704,6 +11856,22 @@ static int dissect_AlternativeRABConfigurationRequest_PDU(tvbuff_t *tvb _U_, pac offset += 7; offset >>= 3; return offset; } +static int dissect_UE_Application_Layer_Measurement_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_ranap_UE_Application_Layer_Measurement_Configuration(tvb, offset, &asn1_ctx, tree, hf_ranap_UE_Application_Layer_Measurement_Configuration_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UE_Application_Layer_Measurement_Configuration_For_Relocation_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_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation(tvb, offset, &asn1_ctx, tree, hf_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_APN_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -11896,6 +12064,14 @@ static int dissect_CSG_Membership_Status_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } +static int dissect_DCN_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_ranap_DCN_ID(tvb, offset, &asn1_ctx, tree, hf_ranap_DCN_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_DeltaRAListofIdleModeUEs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -14571,6 +14747,14 @@ void proto_register_ranap(void) { { "AlternativeRABConfigurationRequest", "ranap.AlternativeRABConfigurationRequest", FT_UINT32, BASE_DEC, VALS(ranap_AlternativeRABConfigurationRequest_vals), 0, NULL, HFILL }}, + { &hf_ranap_UE_Application_Layer_Measurement_Configuration_PDU, + { "UE-Application-Layer-Measurement-Configuration", "ranap.UE_Application_Layer_Measurement_Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation_PDU, + { "UE-Application-Layer-Measurement-Configuration-For-Relocation", "ranap.UE_Application_Layer_Measurement_Configuration_For_Relocation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ranap_APN_PDU, { "APN", "ranap.APN", FT_BYTES, BASE_NONE, NULL, 0, @@ -14667,6 +14851,10 @@ void proto_register_ranap(void) { { "CSG-Membership-Status", "ranap.CSG_Membership_Status", FT_UINT32, BASE_DEC, VALS(ranap_CSG_Membership_Status_vals), 0, NULL, HFILL }}, + { &hf_ranap_DCN_ID_PDU, + { "DCN-ID", "ranap.DCN_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_ranap_DeltaRAListofIdleModeUEs_PDU, { "DeltaRAListofIdleModeUEs", "ranap.DeltaRAListofIdleModeUEs_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16103,6 +16291,42 @@ void proto_register_ranap(void) { { "SupportedRAB-ParameterBitrateList", "ranap.SupportedRAB_ParameterBitrateList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_ranap_applicationLayerContainerForMeasurementConfiguration, + { "applicationLayerContainerForMeasurementConfiguration", "ranap.applicationLayerContainerForMeasurementConfiguration", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_1000", HFILL }}, + { &hf_ranap_areaScopeForUEApplicationLayerMeasurementConfiguration, + { "areaScopeForUEApplicationLayerMeasurementConfiguration", "ranap.areaScopeForUEApplicationLayerMeasurementConfiguration", + FT_UINT32, BASE_DEC, VALS(ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration_vals), 0, + NULL, HFILL }}, + { &hf_ranap_traceReference, + { "traceReference", "ranap.traceReference", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_tracePropagationParameters, + { "tracePropagationParameters", "ranap.tracePropagationParameters_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_traceCollectionEntityIPAddress, + { "traceCollectionEntityIPAddress", "ranap.traceCollectionEntityIPAddress", + FT_BYTES, BASE_NONE, NULL, 0, + "TransportLayerAddress", HFILL }}, + { &hf_ranap_cellbased, + { "cellbased", "ranap.cellbased_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_labased, + { "labased", "ranap.labased_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_rabased, + { "rabased", "ranap.rabased_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_plmn_area_based, + { "plmn-area-based", "ranap.plmn_area_based_element", + FT_NONE, BASE_NONE, NULL, 0, + "PLMNBased", HFILL }}, { &hf_ranap_sAI, { "sAI", "ranap.sAI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -16303,6 +16527,14 @@ void proto_register_ranap(void) { { "homeENB-ID", "ranap.homeENB_ID", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_28", HFILL }}, + { &hf_ranap_short_macroENB_ID, + { "short-macroENB-ID", "ranap.short_macroENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_ranap_long_macroENB_ID, + { "long-macroENB-ID", "ranap.long_macroENB_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_21", HFILL }}, { &hf_ranap_permittedAlgorithms, { "permittedAlgorithms", "ranap.permittedAlgorithms", FT_UINT32, BASE_DEC, NULL, 0, @@ -16683,19 +16915,7 @@ void proto_register_ranap(void) { { "TMGI", "ranap.TMGI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ranap_cellbased, - { "cellbased", "ranap.cellbased_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_ranap_labased, - { "labased", "ranap.labased_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_ranap_rabased, - { "rabased", "ranap.rabased_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_ranap_plmn_area_based, + { &hf_ranap_plmn_area_based_01, { "plmn-area-based", "ranap.plmn_area_based_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, @@ -16787,6 +17007,14 @@ void proto_register_ranap(void) { { "loggingDuration", "ranap.loggingDuration", FT_UINT32, BASE_DEC, VALS(ranap_LoggingDuration_vals), 0, NULL, HFILL }}, + { &hf_ranap_plmnList, + { "plmnList", "ranap.plmnList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_ranap_PLMNList_item, + { "PLMNidentity", "ranap.PLMNidentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_ranap_PLMNs_in_shared_network_item, { "PLMNs-in-shared-network item", "ranap.PLMNs_in_shared_network_item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -17031,10 +17259,6 @@ void proto_register_ranap(void) { { "targeteNB-ID", "ranap.targeteNB_ID_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_ranap_traceReference, - { "traceReference", "ranap.traceReference", - FT_BYTES, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_ranap_traceActivationIndicator, { "traceActivationIndicator", "ranap.traceActivationIndicator", FT_UINT32, BASE_DEC, VALS(ranap_T_traceActivationIndicator_vals), 0, @@ -17275,10 +17499,6 @@ void proto_register_ranap(void) { { "ue-identity", "ranap.ue_identity", FT_UINT32, BASE_DEC, VALS(ranap_UE_ID_vals), 0, "UE_ID", HFILL }}, - { &hf_ranap_tracePropagationParameters, - { "tracePropagationParameters", "ranap.tracePropagationParameters_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_ranap_traceRecordingSessionReference, { "traceRecordingSessionReference", "ranap.traceRecordingSessionReference", FT_UINT32, BASE_DEC, NULL, 0, @@ -17699,6 +17919,9 @@ void proto_register_ranap(void) { &ett_ranap_Alt_RAB_Parameter_MaxBitrateList, &ett_ranap_Alt_RAB_Parameter_SupportedMaxBitrateInf, &ett_ranap_Alt_RAB_Parameter_SupportedMaxBitrates, + &ett_ranap_UE_Application_Layer_Measurement_Configuration, + &ett_ranap_UE_Application_Layer_Measurement_Configuration_For_Relocation, + &ett_ranap_AreaScopeForUEApplicationLayerMeasurementConfiguration, &ett_ranap_AreaIdentity, &ett_ranap_Ass_RAB_Parameters, &ett_ranap_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList, @@ -17791,6 +18014,8 @@ void proto_register_ranap(void) { &ett_ranap_LABased, &ett_ranap_LAI_List, &ett_ranap_LoggedMDT, + &ett_ranap_PLMNBased, + &ett_ranap_PLMNList, &ett_ranap_PLMNs_in_shared_network, &ett_ranap_PLMNs_in_shared_network_item, &ett_ranap_PositioningDataSet, @@ -18352,6 +18577,9 @@ proto_reg_handoff_ranap(void) dissector_add_uint("ranap.extension", id_Additional_PositioningDataSet, create_dissector_handle(dissect_Additional_PositioningDataSet_PDU, proto_ranap)); dissector_add_uint("ranap.extension", id_CivicAddress, create_dissector_handle(dissect_CivicAddress_PDU, proto_ranap)); dissector_add_uint("ranap.extension", id_PowerSavingIndicator, create_dissector_handle(dissect_PowerSavingIndicator_PDU, proto_ranap)); + dissector_add_uint("ranap.extension", id_DCN_ID, create_dissector_handle(dissect_DCN_ID_PDU, proto_ranap)); + dissector_add_uint("ranap.extension", id_UE_Application_Layer_Measurement_Configuration, create_dissector_handle(dissect_UE_Application_Layer_Measurement_Configuration_PDU, proto_ranap)); + dissector_add_uint("ranap.extension", id_UE_Application_Layer_Measurement_Configuration_For_Relocation, create_dissector_handle(dissect_UE_Application_Layer_Measurement_Configuration_For_Relocation_PDU, proto_ranap)); dissector_add_uint("ranap.proc.imsg", id_Iu_Release, create_dissector_handle(dissect_Iu_ReleaseCommand_PDU, proto_ranap)); dissector_add_uint("ranap.proc.sout", id_Iu_Release, create_dissector_handle(dissect_Iu_ReleaseComplete_PDU, proto_ranap)); dissector_add_uint("ranap.proc.imsg", id_RelocationPreparation, create_dissector_handle(dissect_RelocationRequired_PDU, proto_ranap)); |