F1AP: upgrade dissector to v16.9.0

This commit is contained in:
Pascal Quantin 2022-04-08 17:46:39 +02:00
parent ab71cb51ff
commit b7ba126644
12 changed files with 348 additions and 187 deletions

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.6 Common Definitions
-- **************************************************************
--

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.7 Constant Definitions
-- **************************************************************
--
@ -649,6 +649,11 @@ id-SCGIndicator ProtocolIE-ID ::= 432
id-EstimatedArrivalProbability ProtocolIE-ID ::= 433
id-TRPType ProtocolIE-ID ::= 434
id-SRSSpatialRelationPerSRSResource ProtocolIE-ID ::= 435
id-PDCPTerminatingNodeDLTNLAddrInfo ProtocolIE-ID ::= 436
id-ENBDLTNLAddress ProtocolIE-ID ::= 437
id-PosMeasurementPeriodicityExtended ProtocolIE-ID ::= 438
id-PRS-Resource-ID ProtocolIE-ID ::= 439
id-LocationMeasurementInformation ProtocolIE-ID ::= 440
END

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.8 Container Definitions
-- **************************************************************
--

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.5 Information Element Definitions
-- **************************************************************
--
@ -109,6 +109,10 @@ IMPORTS
id-EstimatedArrivalProbability,
id-TRPType,
id-SRSSpatialRelationPerSRSResource,
id-PDCPTerminatingNodeDLTNLAddrInfo,
id-ENBDLTNLAddress,
id-PRS-Resource-ID,
id-LocationMeasurementInformation,
maxNRARFCN,
maxnoofErrors,
maxnoofBPLMNs,
@ -1127,7 +1131,8 @@ CUtoDURRCInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-MeasurementTimingConfiguration CRITICALITY ignore EXTENSION MeasurementTimingConfiguration PRESENCE optional }|
{ ID id-UEAssistanceInformation CRITICALITY ignore EXTENSION UEAssistanceInformation PRESENCE optional }|
{ ID id-CG-Config CRITICALITY ignore EXTENSION CG-Config PRESENCE optional }|
{ ID id-UEAssistanceInformationEUTRA CRITICALITY ignore EXTENSION UEAssistanceInformationEUTRA PRESENCE optional },
{ ID id-UEAssistanceInformationEUTRA CRITICALITY ignore EXTENSION UEAssistanceInformationEUTRA PRESENCE optional }|
{ ID id-LocationMeasurementInformation CRITICALITY ignore EXTENSION LocationMeasurementInformation PRESENCE optional },
...
}
@ -1864,6 +1869,7 @@ EUTRANQoS ::= SEQUENCE {
}
EUTRANQoS-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-ENBDLTNLAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional },
...
}
@ -2577,6 +2583,8 @@ LMF-MeasurementID ::= INTEGER (1.. 65536, ...)
LMF-UE-MeasurementID ::= INTEGER (1.. 256, ...)
LocationMeasurementInformation ::= OCTET STRING
LocationUncertainty ::= SEQUENCE {
horizontalUncertainty INTEGER (0..255),
horizontalConfidence INTEGER (0..100),
@ -3224,9 +3232,11 @@ PosBroadcast ::= ENUMERATED {
PositioningBroadcastCells ::= SEQUENCE (SIZE (1..maxnoBcastCell)) OF NRCGI
MeasurementPeriodicity ::= ENUMERATED
{ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, ..., ms20480, ms40960}
{ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, ..., ms20480, ms40960, extended }
MeasurementPeriodicityExtended ::= ENUMERATED {ms160, ms320, ms1280, ms2560, ms61440, ms81920, ms368640, ms737280, ms1843200, ...}
PosMeasurementQuantities ::= SEQUENCE (SIZE(1.. maxnoofPosMeas)) OF PosMeasurementQuantities-Item
PosMeasurementQuantities-Item ::= SEQUENCE {
@ -3425,6 +3435,7 @@ PRSAngleItem ::= SEQUENCE {
}
PRSAngleItem-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-PRS-Resource-ID CRITICALITY ignore EXTENSION PRS-Resource-ID PRESENCE optional },
...
}
@ -3584,7 +3595,8 @@ QoSFlowLevelQoSParameters ::= SEQUENCE {
QoSFlowLevelQoSParameters-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-PDUSessionID CRITICALITY ignore EXTENSION PDUSessionID PRESENCE optional}|
{ ID id-ULPDUSessionAggregateMaximumBitRate CRITICALITY ignore EXTENSION BitRate PRESENCE optional}|
{ ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional},
{ ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}|
{ ID id-PDCPTerminatingNodeDLTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional },
...
}

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.4 PDU Definitions
-- **************************************************************
--
@ -263,7 +263,8 @@ IMPORTS
Extended-GNB-DU-Name,
F1CTransferPath,
SCGIndicator,
SpatialRelationPerSRSResource
SpatialRelationPerSRSResource,
MeasurementPeriodicityExtended
@ -612,6 +613,7 @@ FROM F1AP-Containers
id-F1CTransferPath,
id-SCGIndicator,
id-SRSSpatialRelationPerSRSResource,
id-PosMeasurementPeriodicityExtended,
maxCellingNBDU,
maxnoofCandidateSpCells,
maxnoofDRBs,
@ -3100,7 +3102,10 @@ PositioningMeasurementRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
{ ID id-MeasurementBeamInfoRequest CRITICALITY ignore TYPE MeasurementBeamInfoRequest PRESENCE optional }|
{ ID id-SystemFrameNumber CRITICALITY ignore TYPE SystemFrameNumber PRESENCE optional}|
{ ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional},
{ ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional}|
{ ID id-PosMeasurementPeriodicityExtended CRITICALITY reject TYPE MeasurementPeriodicityExtended PRESENCE conditional }
-- The IE shall be present the MeasurementPeriodicity IE is set to the value "extended"
,
...
}

View File

@ -1,4 +1,4 @@
-- 3GPP TS 38.473 V16.8.0 (2021-12)
-- 3GPP TS 38.473 V16.9.0 (2022-04)
-- 9.4.3 Elementary Procedure Definitions
-- **************************************************************
--

View File

@ -592,6 +592,11 @@ id-SCGIndicator ProtocolIE-ID
id-EstimatedArrivalProbability ProtocolIE-ID
id-TRPType ProtocolIE-ID
id-SRSSpatialRelationPerSRSResource ProtocolIE-ID
id-PDCPTerminatingNodeDLTNLAddrInfo ProtocolIE-ID
id-ENBDLTNLAddress ProtocolIE-ID
id-PosMeasurementPeriodicityExtended ProtocolIE-ID
id-PRS-Resource-ID ProtocolIE-ID
id-LocationMeasurementInformation ProtocolIE-ID
#.END
#.REGISTER
@ -926,6 +931,7 @@ Extended-GNB-CU-Name N f1ap.ies id-Extended-GNB-CU-
F1CTransferPath N f1ap.ies id-F1CTransferPath
SCGIndicator N f1ap.ies id-SCGIndicator
TRPType N f1ap.ies id-TRPType
MeasurementPeriodicityExtended N f1ap.ies id-PosMeasurementPeriodicityExtended
#F1AP-PROTOCOL-EXTENSION
GNB-CUSystemInformation N f1ap.extension id-gNB-CUSystemInformation
@ -1020,6 +1026,10 @@ TransmissionStopIndicator N f1ap.extension id-Transmissi
SrsFrequency N f1ap.extension id-SrsFrequency
CHO-Probability N f1ap.extension id-EstimatedArrivalProbability
SpatialRelationPerSRSResource N f1ap.extension id-SRSSpatialRelationPerSRSResource
TransportLayerAddress N f1ap.extension id-PDCPTerminatingNodeDLTNLAddrInfo
TransportLayerAddress N f1ap.extension id-ENBDLTNLAddress
PRS-Resource-ID N f1ap.extension id-PRS-Resource-ID
LocationMeasurementInformation N f1ap.extension id-LocationMeasurementInformation
#F1AP-ELEMENTARY-PROCEDURE
Reset N f1ap.proc.imsg id-Reset
@ -1981,6 +1991,14 @@ Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
dissect_nrppa_Assistance_Information_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
#.FN_BODY LocationMeasurementInformation VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
if (param_tvb) {
proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_LocationMeasurementInformation);
dissect_nr_rrc_LocationMeasurementInfo_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
#.FN_HDR Reset
set_message_label(actx, MTYPE_RESET);
set_stats_message_type(actx->pinfo, MTYPE_RESET);

View File

@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
* References: 3GPP TS 38.473 V16.8.0 (2021-12)
* References: 3GPP TS 38.473 V16.9.0 (2022-04)
*/
#include "config.h"
@ -126,6 +126,7 @@ static gint ett_f1ap_SL_ConfigDedicatedEUTRA_Info = -1;
static gint ett_f1ap_TDD_UL_DLConfigCommonNR = -1;
static gint ett_f1ap_UEAssistanceInformationEUTRA = -1;
static gint ett_f1ap_PosAssistance_Information = -1;
static gint ett_f1ap_LocationMeasurementInformation = -1;
#include "packet-f1ap-ett.c"
enum{
@ -732,6 +733,7 @@ void proto_register_f1ap(void) {
&ett_f1ap_TDD_UL_DLConfigCommonNR,
&ett_f1ap_UEAssistanceInformationEUTRA,
&ett_f1ap_PosAssistance_Information,
&ett_f1ap_LocationMeasurementInformation,
#include "packet-f1ap-ettarr.c"
};

View File

@ -67,6 +67,7 @@ FeatureSetEntryIndex_PDU
FreqBandList_PDU
HandoverCommand_PDU
HandoverPreparationInformation_PDU
LocationMeasurementInfo_PDU
MeasConfig_PDU
MeasGapConfig_PDU
MeasGapSharingConfig_PDU
@ -132,6 +133,7 @@ FeatureSetEntryIndex
FreqBandList
HandoverCommand
HandoverPreparationInformation
LocationMeasurementInfo
MeasConfig
MeasGapConfig
MeasGapSharingConfig

File diff suppressed because it is too large Load Diff

View File

@ -419,6 +419,7 @@ static int hf_nr_rrc_nr_rrc_SIB13_r16_PDU = -1; /* SIB13_r16 */
static int hf_nr_rrc_nr_rrc_SIB14_r16_PDU = -1; /* SIB14_r16 */
static int hf_nr_rrc_nr_rrc_CellGroupConfig_PDU = -1; /* CellGroupConfig */
static int hf_nr_rrc_nr_rrc_DRX_Config_PDU = -1; /* DRX_Config */
static int hf_nr_rrc_nr_rrc_LocationMeasurementInfo_PDU = -1; /* LocationMeasurementInfo */
static int hf_nr_rrc_nr_rrc_MeasConfig_PDU = -1; /* MeasConfig */
static int hf_nr_rrc_nr_rrc_MeasGapConfig_PDU = -1; /* MeasGapConfig */
static int hf_nr_rrc_nr_rrc_MeasGapSharingConfig_PDU = -1; /* MeasGapSharingConfig */
@ -43043,6 +43044,8 @@ static const per_choice_t LocationMeasurementInfo_choice[] = {
static int
dissect_nr_rrc_LocationMeasurementInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
proto_item_set_hidden(prot_ti);
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
ett_nr_rrc_LocationMeasurementInfo, LocationMeasurementInfo_choice,
NULL);
@ -91796,6 +91799,16 @@ int dissect_nr_rrc_DRX_Config_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pro
offset += 7; offset >>= 3;
return offset;
}
int dissect_nr_rrc_LocationMeasurementInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
proto_item_set_hidden(prot_ti);
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
offset = dissect_nr_rrc_LocationMeasurementInfo(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_LocationMeasurementInfo_PDU);
offset += 7; offset >>= 3;
return offset;
}
int dissect_nr_rrc_MeasConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
proto_item_set_hidden(prot_ti);
@ -92340,6 +92353,10 @@ proto_register_nr_rrc(void) {
{ "DRX-Config", "nr-rrc.DRX_Config_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_nr_rrc_nr_rrc_LocationMeasurementInfo_PDU,
{ "LocationMeasurementInfo", "nr-rrc.LocationMeasurementInfo",
FT_UINT32, BASE_DEC, VALS(nr_rrc_LocationMeasurementInfo_vals), 0,
NULL, HFILL }},
{ &hf_nr_rrc_nr_rrc_MeasConfig_PDU,
{ "MeasConfig", "nr-rrc.MeasConfig_element",
FT_NONE, BASE_NONE, NULL, 0,

View File

@ -58,6 +58,7 @@ int dissect_nr_rrc_SIB13_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot
int dissect_nr_rrc_SIB14_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_CellGroupConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_DRX_Config_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_LocationMeasurementInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_MeasConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_MeasGapConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_MeasGapSharingConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);