summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndersBroman <anders.broman@ericsson.com>2017-05-22 15:09:13 +0200
committerMichael Mann <mmann78@netscape.net>2017-05-22 15:29:14 +0000
commitfc1c8e139bcf885497138cccf05b2d2b543aefc9 (patch)
treefa3003cb75457b98cebc9ecddac72f06b7ead76d
parentd4725439c1728a56e13110ae66389b28b4091403 (diff)
downloadwireshark-fc1c8e139bcf885497138cccf05b2d2b543aefc9.tar.gz
[RANAP] Update to 3GPP TS 25.413 V14.0.0 (2017-03)
Change-Id: I5d448a4daf438b05a30473e999574803e5d6ade9 Reviewed-on: https://code.wireshark.org/review/21730 Reviewed-by: Anders Broman <a.broman58@gmail.com> Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-CommonDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-Constants.asn18
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-Containers.asn2
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-IEs.asn49
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-PDU-Contents.asn30
-rw-r--r--epan/dissectors/asn1/ranap/RANAP-PDU-Descriptions.asn2
-rw-r--r--epan/dissectors/asn1/ranap/ranap.cnf7
-rw-r--r--epan/dissectors/packet-ranap.c796
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, &parameter_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, &parameter_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));