summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/lte-rrc
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1/lte-rrc')
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn530
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn7
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn138
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/lte-rrc.cnf720
-rw-r--r--epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c855
10 files changed, 1599 insertions, 661 deletions
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
index 1bb4be95..8fa13552 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
EUTRA-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
index dbb01f78..09ea1843 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
EUTRA-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -690,6 +690,11 @@ LoggedMeasurementConfiguration-v1530-IEs ::= SEQUENCE {
LoggedMeasurementConfiguration-v1700-IEs ::= SEQUENCE {
loggedEventTriggerConfig-r17 LoggedEventTriggerConfig-r17 OPTIONAL, --Need OR
measUncomBarPre-r17 ENUMERATED {true} OPTIONAL, --Need OR
+ nonCriticalExtension LoggedMeasurementConfiguration-v1800-IEs OPTIONAL
+}
+
+LoggedMeasurementConfiguration-v1800-IEs ::= SEQUENCE {
+ sigLoggedMeasType-r18 ENUMERATED {true} OPTIONAL, --Need OR
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -723,7 +728,7 @@ MasterInformationBlock ::= SEQUENCE {
systemFrameNumber BIT STRING (SIZE (8)),
schedulingInfoSIB1-BR-r13 INTEGER (0..31),
systemInfoUnchanged-BR-r15 BOOLEAN,
- partEARFCN-17 CHOICE {
+ partEARFCN-r17 CHOICE {
spare BIT STRING (SIZE (2)),
earfcn-LSB BIT STRING (SIZE (2))
},
@@ -1669,7 +1674,12 @@ RRCConnectionReconfigurationComplete-v1700-IEs ::= SEQUENCE {
RRCConnectionReconfigurationComplete-v1710-IEs ::= SEQUENCE {
gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionReconfigurationComplete-v1800-IEs OPTIONAL
+}
+
+RRCConnectionReconfigurationComplete-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1745,7 +1755,12 @@ RRCConnectionReestablishmentComplete-v1530-IEs ::= SEQUENCE {
RRCConnectionReestablishmentComplete-v1710-IEs ::= SEQUENCE {
gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionReestablishmentComplete-v1800-IEs OPTIONAL
+}
+
+RRCConnectionReestablishmentComplete-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -2177,12 +2192,12 @@ RRCConnectionResume-r13-IEs ::= SEQUENCE {
antennaInfoDedicatedPCell-r13 AntennaInfoDedicated-v10i0 OPTIONAL, -- Need ON
drb-ContinueROHC-r13 ENUMERATED {true} OPTIONAL, -- Need OP
lateNonCriticalExtension OCTET STRING OPTIONAL,
- rrcConnectionResume-v1430-IEs RRCConnectionResume-v1430-IEs OPTIONAL
+ nonCriticalExtension RRCConnectionResume-v1430-IEs OPTIONAL
}
RRCConnectionResume-v1430-IEs ::= SEQUENCE {
otherConfig-r14 OtherConfig-r9 OPTIONAL, -- Need ON
- rrcConnectionResume-v1510-IEs RRCConnectionResume-v1510-IEs OPTIONAL
+ nonCriticalExtension RRCConnectionResume-v1510-IEs OPTIONAL
}
RRCConnectionResume-v1510-IEs ::= SEQUENCE {
@@ -2258,7 +2273,12 @@ RRCConnectionResumeComplete-v1610-IEs ::= SEQUENCE {
RRCConnectionResumeComplete-v1710-IEs ::= SEQUENCE {
gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
- nonCriticalExtension SEQUENCE{} OPTIONAL
+ nonCriticalExtension RRCConnectionResumeComplete-v1800-IEs OPTIONAL
+}
+
+RRCConnectionResumeComplete-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE{} OPTIONAL
}
@@ -2429,7 +2449,12 @@ RRCConnectionSetupComplete-v1690-IEs ::= SEQUENCE {
}
RRCConnectionSetupComplete-v1710-IEs ::= SEQUENCE {
- gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension RRCConnectionSetupComplete-v1800-IEs OPTIONAL
+}
+
+RRCConnectionSetupComplete-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
RegisteredMME ::= SEQUENCE {
@@ -2818,7 +2843,8 @@ SystemInformation-r8-IEs ::= SEQUENCE {
sib29-v1610 SystemInformationBlockType29-r16,
sib30-v1700 SystemInformationBlockType30-r17,
sib31-v1700 SystemInformationBlockType31-r17,
- sib32-v1700 SystemInformationBlockType32-r17
+ sib32-v1700 SystemInformationBlockType32-r17,
+ sib33-v1800 SystemInformationBlockType33-r18
},
nonCriticalExtension SystemInformation-v8a0-IEs OPTIONAL
}
@@ -2872,6 +2898,17 @@ PosSystemInformation-r15-IEs ::= SEQUENCE {
[[
posSib1-9-v1700 SystemInformationBlockPos-r15,
posSib1-10-v1700 SystemInformationBlockPos-r15
+ ]],
+ [[
+ posSib2-17a-v1770 SystemInformationBlockPos-r15,
+ posSib2-18a-v1770 SystemInformationBlockPos-r15,
+ posSib2-20a-v1770 SystemInformationBlockPos-r15
+ ]],
+ [[
+ posSib1-11-v1800 SystemInformationBlockPos-r15,
+ posSib1-12-v1800 SystemInformationBlockPos-r15,
+ posSib2-26-v1800 SystemInformationBlockPos-r15,
+ posSib2-27-v1800 SystemInformationBlockPos-r15
]]
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
@@ -3078,7 +3115,14 @@ SystemInformationBlockType1-v1700-IEs ::= SEQUENCE {
cellBarred-NTN-r17 ENUMERATED {barred, notBarred},
plmn-IdentityList-v1700 PLMN-IdentityList-v1700 OPTIONAL -- Need OR
} OPTIONAL, -- Need OR
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SystemInformationBlockType1-v1800-IEs OPTIONAL
+}
+
+SystemInformationBlockType1-v1800-IEs ::= SEQUENCE {
+ freqBandIndicatorAerial-r18 FreqBandIndicator-r11 OPTIONAL, -- Need OR
+ freqBandInfoAerial-r18 NS-PmaxListAerial-r18 OPTIONAL, -- Need OR
+ multiBandInfoListAerial-r18 MultiBandInfoListAerial-r18 OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
PLMN-IdentityList ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo
@@ -3169,7 +3213,7 @@ SIB-Type-v12j0 ::= ENUMERATED {
sibType24-v1530, sibType25-v1530, sibType26-v1530,
sibType26a-v1610, sibType27-v1610, sibType28-v1610,
sibType29-v1610, sibType30-v1700, sibType31-v1700, sibType32-v1700,
- spare3, spare2, spare1, ...}
+ sibType33-v1800, spare2, spare1, ...}
SI-Periodicity-r12 ::= ENUMERATED {rf8, rf16, rf32, rf64, rf128, rf256, rf512}
@@ -3261,7 +3305,13 @@ PosSIB-Type-r15 ::= SEQUENCE {
posSibType4-1-v1610,
posSibType5-1-v1610,
posSibType1-9-v1700,
- posSibType1-10-v1700
+ posSibType1-10-v1700,
+ posSibType2-17a-v1770,
+ posSibType2-18a-v1770,
+ posSibType2-20a-v1770,
+ posSibType1-11-v1800,
+ posSibType1-12-v1800,
+ posSibType2-26-v1800, posSibType2-27-v1800
},
...
}
@@ -3590,7 +3640,12 @@ UEInformationRequest-v1530-IEs ::= SEQUENCE {
UEInformationRequest-v1710-IEs ::= SEQUENCE {
coarseLocationReq-r17 ENUMERATED {true} OPTIONAL, -- Need ON
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UEInformationRequest-v1800-IEs OPTIONAL
+}
+
+UEInformationRequest-v1800-IEs ::= SEQUENCE {
+ rach-ReportReqNR-r18 ENUMERATED {true} OPTIONAL, -- Need ON
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -3652,7 +3707,12 @@ UEInformationResponse-v1610-IEs ::= SEQUENCE {
}
UEInformationResponse-v1710-IEs ::= SEQUENCE {
- coarseLocationInfo-r17 OCTET STRING OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
+ coarseLocationInfo-r17 OCTET STRING OPTIONAL, nonCriticalExtension UEInformationResponse-v1800-IEs OPTIONAL
+}
+
+UEInformationResponse-v1800-IEs ::= SEQUENCE {
+ rach-ReportNR-r18 RACH-ReportNR-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
RACH-Report-r16 ::= SEQUENCE {
@@ -3665,6 +3725,21 @@ RACH-Report-v1610 ::= SEQUENCE {
edt-Fallback-r16 BOOLEAN
}
+RACH-ReportNR-r18 ::= SEQUENCE {
+ rach-ReportListNR-r18 OCTET STRING,
+ cellIdListNR-r18 CellIdListNR-r18
+}
+
+CellIdListNR-r18 ::= SEQUENCE (SIZE (1..maxCellRAReportNR-r18)) OF CellIdNR-r18
+
+CellIdNR-r18 ::= CHOICE {
+ cellGlobalId-r18 CellGlobalIdNR-r16,
+ pci-arfcn-r18 SEQUENCE {
+ physCellId-r18 PhysCellIdNR-r15,
+ carrierFreq-r18 ARFCN-ValueNR-r15
+ }
+}
+
RLF-Report-r9 ::= SEQUENCE {
measResultLastServCell-r9 SEQUENCE {
rsrpResult-r9 RSRP-Range,
@@ -3753,7 +3828,10 @@ RLF-Report-r9 ::= SEQUENCE {
[[ measResultListNR-v1640 SEQUENCE {
carrierFreqNR-r16 ARFCN-ValueNR-r15
} OPTIONAL,
- measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL
+ measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL
+ ]],
+ [[
+ voiceFallbackHO-r18 ENUMERATED {true} OPTIONAL
]]
}
@@ -4121,7 +4199,7 @@ SystemInformationBlockType2 ::= SEQUENCE {
idleModeMeasurements-r15 ENUMERATED {true} OPTIONAL, -- Need OR
reducedCP-LatencyEnabled-r15 ENUMERATED {true} OPTIONAL -- Need OR
]],
- [[ mbms-ROM-ServiceIndication-r15 ENUMERATED {true} OPTIONAL -- Need OR
+ [[ mbms-ROM-ServiceIndication-r15 ENUMERATED {true} OPTIONAL -- Need OR
]],
[[ rlos-Enabled-r16 ENUMERATED {true} OPTIONAL, -- Need OR
earlySecurityReactivation-r16 ENUMERATED {true} OPTIONAL, -- Need OR
@@ -4134,6 +4212,12 @@ SystemInformationBlockType2 ::= SEQUENCE {
mpdcch-CQI-Reporting-r16 ENUMERATED {fourBits, both} OPTIONAL, -- Need OR
rai-ActivationEnh-r16 ENUMERATED {true} OPTIONAL, -- Need OR
idleModeMeasurementsNR-r16 ENUMERATED {true} OPTIONAL -- Need OR
+ ]],
+ [[ gnss-PositionFixDurationReporting-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ freqBandIndicatorAerial-r18 FreqBandIndicator-r11 OPTIONAL, -- Need OR
+ freqInfoAerial-r18 AdditionalSpectrumEmission-r18 OPTIONAL, -- Need OR
+ multiBandInfoListAerial-r18 SEQUENCE (SIZE (1..maxMultiBands)) OF
+ AdditionalSpectrumEmission-r18 OPTIONAL -- Need OR
]]
}
@@ -4320,6 +4404,11 @@ SystemInformationBlockType3 ::= SEQUENCE {
[[ cellReselectionServingFreqInfo-v1610 CellReselectionServingFreqInfo-v1610 OPTIONAL -- Need OR
]],
[[ t-Service-r17 TimeOffsetUTC-r17 OPTIONAL -- Need OR
+ ]],
+ [[ satelliteAssistanceInfoList-r18
+ SEQUENCE (SIZE(1..maxSat-r17)) OF SatelliteId-r18 OPTIONAL, -- Need OR
+ freqBandInfoAerial-r18 NS-PmaxListAerial-r18 OPTIONAL, -- Need OR
+ multiBandInfoListAerial-r18 MultiBandInfoListAerial-r18 OPTIONAL -- Need OR
]]
}
@@ -4420,6 +4509,9 @@ SystemInformationBlockType5 ::= SEQUENCE {
[[ interFreqCarrierFreqList-v1610 InterFreqCarrierFreqList-v1610 OPTIONAL, -- Need OR
interFreqCarrierFreqListExt-v1610 InterFreqCarrierFreqListExt-v1610 OPTIONAL, -- Need OR
measIdleConfigSIB-NR-r16 MeasIdleConfigSIB-NR-r16 OPTIONAL -- Need OR
+ ]],
+ [[ interFreqCarrierFreqList-v1800 InterFreqCarrierFreqList-v1800 OPTIONAL, -- Need OR
+ interFreqCarrierFreqListExt-v1800 InterFreqCarrierFreqListExt-v1800 OPTIONAL -- Need OR
]]
}
@@ -4466,6 +4558,8 @@ InterFreqCarrierFreqList-v1530 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarr
InterFreqCarrierFreqList-v1610 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1610
+InterFreqCarrierFreqList-v1800 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1800
+
InterFreqCarrierFreqListExt-r12 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-r12
InterFreqCarrierFreqListExt-v1280 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v10j0
@@ -4480,6 +4574,8 @@ InterFreqCarrierFreqListExt-v1530 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqC
InterFreqCarrierFreqListExt-v1610 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1610
+InterFreqCarrierFreqListExt-v1800 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1800
+
InterFreqCarrierFreqInfo ::= SEQUENCE {
dl-CarrierFreq ARFCN-ValueEUTRA,
q-RxLevMin Q-RxLevMin,
@@ -4585,6 +4681,15 @@ InterFreqCarrierFreqInfo-v1610 ::= SEQUENCE {
interFreqNeighCellList-v1610 InterFreqNeighCellList-v1610 OPTIONAL -- Cond RSS
}
+
+InterFreqCarrierFreqInfo-v1800 ::= SEQUENCE {
+ satelliteAssistanceInfoList-r18 SEQUENCE (SIZE(1..maxSat-r17)) OF SatelliteId-r18
+ OPTIONAL, -- Need OR
+ freqBandIndicatorAerial-r18 FreqBandIndicator-r11 OPTIONAL, -- Need OR
+ freqBandInfoAerial-r18 NS-PmaxListAerial-r18 OPTIONAL, -- Need OR
+ multiBandInfoListAerial-r18 MultiBandInfoListAerial-r18 OPTIONAL -- Need OR
+}
+
InterFreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo
InterFreqNeighCellList-v1610 ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo-v1610
@@ -5216,6 +5321,8 @@ SystemInformationBlockType21-r14 ::= SEQUENCE {
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
[[ anchorCarrierFreqListNR-r16 SL-NR-AnchorCarrierFreqList-r16 OPTIONAL -- Need OR
+ ]],
+ [[ sl-A2X-ConfigCommon-r18 SL-A2X-ConfigCommon-r18 OPTIONAL -- Need OR
]]
}
@@ -5235,6 +5342,10 @@ SL-V2X-ConfigCommon-r14 ::= SEQUENCE {
cbr-CommonTxConfigList-r14 SL-CBR-CommonTxConfigList-r14 OPTIONAL -- Need OR
}
+SL-A2X-ConfigCommon-r18 ::= SEQUENCE {
+ a2x-CommRxPool-r18 SL-CommRxPoolListV2X-r14 OPTIONAL, -- Need OR
+ a2x-commTxPool-r18 SL-CommTxPoolListV2X-r14 OPTIONAL -- Need OR
+}
SystemInformationBlockType24-r15 ::= SEQUENCE {
@@ -5248,6 +5359,8 @@ SystemInformationBlockType24-r15 ::= SEQUENCE {
[[ carrierFreqListNR-v1700 CarrierFreqListNR-v1700 OPTIONAL -- Need OR
]],
[[ carrierFreqListNR-v1720 CarrierFreqListNR-v1720 OPTIONAL -- Need OR
+ ]],
+ [[ carrierFreqListNR-v1810 CarrierFreqListNR-v1810 OPTIONAL -- Need OR
]]
}
@@ -5259,6 +5372,8 @@ CarrierFreqListNR-v1700 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1700
CarrierFreqListNR-v1720 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1720
+CarrierFreqListNR-v1810 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1810
+
CarrierFreqNR-r15 ::= SEQUENCE {
carrierFreq-r15 ARFCN-ValueNR-r15,
multiBandInfoList-r15 MultiFrequencyBandListNR-r15 OPTIONAL, -- Need OR
@@ -5286,6 +5401,10 @@ CarrierFreqNR-r15 ::= SEQUENCE {
[[ multiBandNsPmaxListNR-v1550 MultiBandNsPmaxListNR-1-v1550 OPTIONAL, -- Need OR
multiBandNsPmaxListNR-SUL-v1550 MultiBandNsPmaxListNR-v1550 OPTIONAL, -- Need OR
ssb-ToMeasure-r15 SSB-ToMeasure-r15 OPTIONAL -- Need OR
+ ]],
+ [[ ns-PmaxListNR-v1760 NS-PmaxListNR-v1760 OPTIONAL, -- Need OR
+ multiBandNsPmaxListNR-v1760 MultiBandNsPmaxListNR-1-v1760 OPTIONAL, -- Need OR
+ multiBandNsPmaxListNR-SUL-v1760 MultiBandNsPmaxListNR-v1760 OPTIONAL -- Need OR
]]
}
@@ -5305,10 +5424,26 @@ CarrierFreqNR-v1720 ::= SEQUENCE {
ssb-PositionQCL-CommonNR-r17 SSB-PositionQCL-RelationNR-r17 OPTIONAL -- Cond SharedSpectrum2
}
+CarrierFreqNR-v1810 ::= SEQUENCE {
+ carrierFreq-r18 ARFCN-ValueNR-r15 OPTIONAL, -- Cond LessThan5MHz
+ multiBandInfoList-r18 MultiFrequencyBandListNR-r15 OPTIONAL, -- Cond LessThan5MHz
+ multiBandInfoListAerial-r18 MultiFrequencyBandListNR-r15 OPTIONAL, -- Need OR
+ ns-PmaxListNR-Aerial-r18 NS-PmaxListNR-Aerial-r18 OPTIONAL, -- Need OR
+ multiBandNsPmaxListNR-Aerial-r18 MultiBandNsPmaxListNR-Aerial-1-r18 OPTIONAL, -- Need OR
+ mobileIAB-CellList-r18 PhysCellIdRangeNR-r16 OPTIONAL, -- Need OR
+ mobileIAB-Freq-r18 ENUMERATED {true} OPTIONAL -- Need OR
+}
+
MultiBandNsPmaxListNR-1-v1550 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-1-r15)) OF NS-PmaxListNR-r15
MultiBandNsPmaxListNR-v1550 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF NS-PmaxListNR-r15
+MultiBandNsPmaxListNR-1-v1760 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-1-r15)) OF NS-PmaxListNR-v1760
+
+MultiBandNsPmaxListNR-v1760 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF NS-PmaxListNR-v1760
+
+MultiBandNsPmaxListNR-Aerial-1-r18 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-1-r15)) OF NS-PmaxListNR-Aerial-r18
+
AllowedCellListNR-r16 ::= SEQUENCE (SIZE (1..maxCellAllowedNR-r16)) OF PhysCellIdNR-r15
NR-FreqNeighHSDN-CellList-r17 ::= SEQUENCE (SIZE (1..maxCellNR-r17)) OF PhysCellIdRangeNR-r16
@@ -5455,7 +5590,9 @@ ApplicableDisasterInfo-r17 ::= CHOICE {
SystemInformationBlockType31-r17 ::= SEQUENCE {
servingSatelliteInfo-r17 ServingSatelliteInfo-r17,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- ...
+ ...,
+ [[ servingSatelliteInfo-v1820 ServingSatelliteInfo-v1820 OPTIONAL -- Need OR
+ ]]
}
ServingSatelliteInfo-r17 ::= SEQUENCE {
@@ -5463,7 +5600,7 @@ ServingSatelliteInfo-r17 ::= SEQUENCE {
stateVectors EphemerisStateVectors-r17,
orbitalParameters EphemerisOrbitalParameters-r17
},
- nta-CommonParameters-17 SEQUENCE {
+ nta-CommonParameters-r17 SEQUENCE {
nta-Common-r17 INTEGER (0..8316827) OPTIONAL, -- Need OP
nta-CommonDrift-r17 INTEGER (-261935..261935) OPTIONAL, -- Need OP
nta-CommonDriftVariation-r17 INTEGER (0..29479) OPTIONAL -- Need OP
@@ -5479,15 +5616,28 @@ ServingSatelliteInfo-r17 ::= SEQUENCE {
...
}
+ServingSatelliteInfo-v1820 ::= SEQUENCE {
+ satelliteId-r18 SatelliteId-r18 OPTIONAL, -- Need OR
+ referenceLocation-r18 CHOICE {
+ fixedReferenceLocation-r18 ReferenceLocation-r18,
+ movingReferenceLocation-r18 ReferenceLocation-r18
+ } OPTIONAL, -- Need OR
+ distanceThresh-r18 INTEGER(0..65535) OPTIONAL -- Need OR
+}
+
SystemInformationBlockType32-r17 ::= SEQUENCE {
satelliteInfoList-r17 SatelliteInfoList-r17 OPTIONAL, -- Need OR
lateNonCriticalExtension OCTET STRING OPTIONAL,
- ...
+ ...,
+ [[ satelliteInfoList-v1800 SatelliteInfoList-v1800 OPTIONAL -- Need OR
+ ]]
}
SatelliteInfoList-r17 ::= SEQUENCE (SIZE (1..maxSat-r17)) OF SatelliteInfo-r17
+SatelliteInfoList-v1800 ::= SEQUENCE (SIZE (1..maxSat-r17)) OF CarrierFreqList-v1800
+
SatelliteInfo-r17 ::= SEQUENCE {
satelliteId-r17 INTEGER (0..255),
serviceInfo-r17 SEQUENCE {
@@ -5507,6 +5657,39 @@ SatelliteInfo-r17 ::= SEQUENCE {
}
}
+CarrierFreqList-v1800 ::= SEQUENCE (SIZE (1..maxFreq)) OF ARFCN-ValueEUTRA
+
+
+SystemInformationBlockType33-r18 ::= SEQUENCE {
+ neighSatelliteInfoList-r18 NeighSatelliteInfoList-r18 OPTIONAL, -- Need OR
+ neighValidityDuration-r18 ENUMERATED {s5, s10, s15, s20, s25, s30, s35, s40,
+ s45, s50, s55, s60, s120, s180, s240, s900}
+ OPTIONAL, -- Need OP
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+NeighSatelliteInfoList-r18 ::= SEQUENCE (SIZE(1..maxSat-r17)) OF NeighSatelliteInfo-r18
+
+NeighSatelliteInfo-r18 ::= SEQUENCE {
+ satelliteId-r18 SatelliteId-r18,
+ ephemerisInfo-r18 CHOICE {
+ stateVectors-r18 EphemerisStateVectors-r17,
+ orbitalParameters-r18 EphemerisOrbitalParameters-r17
+ },
+ nta-CommonParameters-r18 SEQUENCE {
+ nta-Common-r18 INTEGER (0..8316827) OPTIONAL, -- Need OP
+ nta-CommonDrift-r18 INTEGER (-261935..261935) OPTIONAL, -- Need OP
+ nta-CommonDriftVariation-r18 INTEGER (0..29479) OPTIONAL -- Need OP
+ },
+ epochTime-r18 SEQUENCE {
+ startSFN-r18 INTEGER (0..1023),
+ startSubFrame-r18 INTEGER (0..9)
+ } OPTIONAL, -- Need OP
+ k-Mac-r18 INTEGER (1..512) OPTIONAL, -- Need OP
+ t-ServiceStartNeigh-r18 TimeOffsetUTC-r17 OPTIONAL -- Need OR
+}
+
Alpha-r12 ::= ENUMERATED {al0, al04, al05, al06, al07, al08, al09, al1}
@@ -6567,6 +6750,9 @@ LogicalChannelConfig ::= SEQUENCE {
]],
[[
bitRateMultiplier-r16 ENUMERATED {x40, x70, x100, x200} OPTIONAL -- Need OR
+ ]],
+ [[
+ allowedHARQ-Mode-r18 ENUMERATED {harqModeA, harqModeB} OPTIONAL -- Need OR
]]
}
@@ -7107,6 +7293,12 @@ PDSCH-ConfigDedicated-v1700 ::= SEQUENCE {
ce-PDSCH-maxTBS-r17 ENUMERATED {enabled} OPTIONAL -- Need OR
}
+PDSCH-ConfigDedicated-v1800 ::= SEQUENCE {
+ downlinkHARQ-FeedbackDisabledBitmap-r18
+ CHOICE {release NULL, setup DownlinkHARQ-FeedbackDisabledBitmap-r18} OPTIONAL, -- Need ON
+ downlinkHARQ-FeedbackDisabledDCI-r18 ENUMERATED {true} OPTIONAL -- Need OR
+}
+
PDSCH-ConfigDedicatedSCell-v1430 ::= SEQUENCE {
tbsIndexAlt2-r14 ENUMERATED {b33} OPTIONAL -- Need OR
}
@@ -7162,6 +7354,8 @@ PDSCH-RE-MappingQCL-Config-r11 ::= SEQUENCE {
]]
}
+DownlinkHARQ-FeedbackDisabledBitmap-r18 ::= BIT STRING (SIZE(14))
+
PDSCH-RE-MappingQCL-ConfigId-r11 ::= INTEGER (1..maxRE-MapQCL-r11)
@@ -7319,7 +7513,7 @@ PhysicalConfigDedicated ::= SEQUENCE {
cfi-Config-r15 CFI-Config-r15,
cfi-PatternConfig-r15 CFI-PatternConfig-r15
}
- } OPTIONAL, -- Need ON
+ } OPTIONAL, -- Need ON
blindPDSCH-Repetition-Config-r15 CHOICE{
release NULL,
setup SEQUENCE {
@@ -7334,7 +7528,7 @@ PhysicalConfigDedicated ::= SEQUENCE {
mcs-restrictionSubframePDSCH-Repetitions-r15 ENUMERATED {n0, n1} OPTIONAL, -- Need ON
mcs-restrictionSlotSubslotPDSCH-Repetitions-r15 ENUMERATED {n0, n1} OPTIONAL -- Need ON
}
- } OPTIONAL -- Need ON
+ } OPTIONAL -- Need ON
]],
[[ spucch-Config-v1550 SPUCCH-Config-v1550 OPTIONAL -- Need ON
]],
@@ -7357,6 +7551,9 @@ PhysicalConfigDedicated ::= SEQUENCE {
]],
[[
uplinkSegmentedPrecompensationGap-r17 ENUMERATED {sym1,sl1,sf1} OPTIONAL -- Need OR
+ ]],
+ [[ pdsch-ConfigDedicated-v1800 PDSCH-ConfigDedicated-v1800 OPTIONAL, -- Need ON
+ pusch-ConfigDedicated-v1800 PUSCH-ConfigDedicated-v1800 OPTIONAL -- Need ON
]]
}
@@ -7501,7 +7698,7 @@ PhysicalConfigDedicatedSCell-r10 ::= SEQUENCE {
cfi-Config-r15 CFI-Config-r15,
cfi-PatternConfig-r15 CFI-PatternConfig-r15
}
- } OPTIONAL, -- Need ON
+ } OPTIONAL, -- Need ON
blindPDSCH-Repetition-Config-r15 CHOICE{
release NULL,
setup SEQUENCE {
@@ -7516,7 +7713,7 @@ PhysicalConfigDedicatedSCell-r10 ::= SEQUENCE {
mcs-restrictionSubframePDSCH-Repetitions-r15 ENUMERATED {n0, n1} OPTIONAL, -- Need ON
mcs-restrictionSlotSubslotPDSCH-Repetitions-r15 ENUMERATED {n0, n1} OPTIONAL -- Need ON
}
- } OPTIONAL -- Need ON
+ } OPTIONAL -- Need ON
]],
[[ spucch-Config-v1550 SPUCCH-Config-v1550 OPTIONAL -- Need ON
]],
@@ -7553,15 +7750,15 @@ PhysicalConfigDedicatedSCell-v1730 ::= SEQUENCE {
}
CFI-Config-r15 ::= SEQUENCE {
- cfi-SubframeNonMBSFN-r15 INTEGER (1..4) OPTIONAL, -- Need ON
- cfi-SlotSubslotNonMBSFN-r15 INTEGER (1..3) OPTIONAL, -- Need ON
- cfi-SubframeMBSFN-r15 INTEGER (1..2) OPTIONAL, -- Need ON
- cfi-SlotSubslotMBSFN-r15 INTEGER (1..2) OPTIONAL -- Need ON
+ cfi-SubframeNonMBSFN-r15 INTEGER (1..4) OPTIONAL, -- Need ON
+ cfi-SlotSubslotNonMBSFN-r15 INTEGER (1..3) OPTIONAL, -- Need ON
+ cfi-SubframeMBSFN-r15 INTEGER (1..2) OPTIONAL, -- Need ON
+ cfi-SlotSubslotMBSFN-r15 INTEGER (1..2) OPTIONAL -- Need ON
}
CFI-PatternConfig-r15 ::= SEQUENCE {
- cfi-PatternSubframe-r15 SEQUENCE (SIZE(10)) OF INTEGER (1..4) OPTIONAL, -- Need ON
- cfi-PatternSlotSubslot-r15 SEQUENCE (SIZE(10)) OF INTEGER (1..3) OPTIONAL -- Need ON
+ cfi-PatternSubframe-r15 SEQUENCE (SIZE(10)) OF INTEGER (1..4) OPTIONAL, -- Need ON
+ cfi-PatternSlotSubslot-r15 SEQUENCE (SIZE(10)) OF INTEGER (1..3) OPTIONAL -- Need ON
}
LAA-SCellConfiguration-r13 ::= SEQUENCE {
@@ -8214,6 +8411,10 @@ PUSCH-ConfigDedicated-v1610 ::= SEQUENCE {
ce-PUSCH-MultiTB-Config-r16 CHOICE {release NULL, setup CE-PUSCH-MultiTB-Config-r16}
}
+PUSCH-ConfigDedicated-v1800 ::= SEQUENCE {
+ uplinkHARQ-Mode-r18 CHOICE {release NULL, setup UplinkHARQ-Mode-r18}
+}
+
PUSCH-ConfigDedicatedSCell-r10 ::= SEQUENCE {
groupHoppingDisabled-r10 ENUMERATED {true} OPTIONAL, -- Need OR
dmrs-WithOCC-Activated-r10 ENUMERATED {true} OPTIONAL -- Need OR
@@ -8240,7 +8441,7 @@ TDD-PUSCH-UpPTS-r14 ::= CHOICE {
}
}
-CE-PUSCH-MultiTB-Config-r16 ::= SEQUENCE {
+CE-PUSCH-MultiTB-Config-r16 ::= SEQUENCE {
interleaving-r16 ENUMERATED {on} OPTIONAL -- Need OR
}
@@ -8282,6 +8483,8 @@ UL-ReferenceSignalsPUSCH ::= SEQUENCE {
cyclicShift INTEGER (0..7)
}
+UplinkHARQ-Mode-r18 ::= BIT STRING (SIZE(8))
+
RACH-ConfigCommon ::= SEQUENCE {
preambleInfo SEQUENCE {
@@ -8730,6 +8933,13 @@ RadioResourceConfigDedicated ::= SEQUENCE {
OPTIONAL, -- Cond Split-SRB1-SRB3
crs-ChEstMPDCCH-ConfigDedicated-r16 CHOICE {release NULL, setup CRS-ChEstMPDCCH-ConfigDedicated-r16} OPTIONAL, -- Need ON
newUE-Identity-r16 C-RNTI OPTIONAL -- Need OP
+ ]],
+ [[ harq-FeedbackEnablingforSPSactive-r18 ENUMERATED {enabled} OPTIONAL, -- Need OR
+ gnss-AutonomousEnabled-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ ul-TransmissionExtensionEnabled-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ ul-TransmissionExtensionValue-r18 ENUMERATED {sf500, sf750, sf1280, sf1920,
+ sf2560, sf5120, sf10240, spare1}
+ OPTIONAL -- Need OR
]]
}
@@ -10225,9 +10435,15 @@ AdditionalSpectrumEmission ::= INTEGER (1..32)
AdditionalSpectrumEmission-v10l0 ::= INTEGER (33..288)
+AdditionalSpectrumEmission-r18 ::= INTEGER (1..288)
+
AdditionalSpectrumEmissionNR-r15 ::= INTEGER (0..7)
+AdditionalSpectrumEmissionNR-v1760 ::= INTEGER (8..39)
+
+AdditionalSpectrumEmissionNR-r18 ::= INTEGER (0..39)
+
ARFCN-ValueCDMA2000 ::= INTEGER (0..2047)
@@ -10484,6 +10700,8 @@ MobilityControlInfo ::= SEQUENCE {
schedulingInfoSIB1-BR-r14 INTEGER (0..31) OPTIONAL -- Cond HO-SFNsynced
]],
[[ daps-Config-r16 DAPS-Config-r16 OPTIONAL -- Cond NotFullConfigHO
+ ]],
+ [[ gnss-PositionFixDurationReporting-r18 ENUMERATED {true} OPTIONAL -- Need OR
]]
}
@@ -10587,6 +10805,13 @@ MultiBandInfo-v9e0 ::= SEQUENCE {
freqBandIndicator-v9e0 FreqBandIndicator-v9e0 OPTIONAL -- Need OP
}
+MultiBandInfoListAerial-r18 ::= SEQUENCE (SIZE (1..maxMultiBands)) OF MultiBandInfoAerial-r18
+
+MultiBandInfoAerial-r18 ::= SEQUENCE {
+ freqBandIndicatorAerial-r18 FreqBandIndicator-r11 OPTIONAL, -- Cond NotSIB3
+ ns-PmaxListAerial-r18 NS-PmaxListAerial-r18 OPTIONAL -- Need OP
+}
+
MultiFrequencyBandListNR-r15 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF FreqBandIndicatorNR-r15
@@ -10595,6 +10820,8 @@ NS-PmaxList-r10 ::= SEQUENCE (SIZE (1..maxNS-Pmax-r10)) OF NS-PmaxValue-r10
NS-PmaxList-v10l0 ::= SEQUENCE (SIZE (1..maxNS-Pmax-r10)) OF NS-PmaxValue-v10l0
+NS-PmaxListAerial-r18 ::= SEQUENCE (SIZE (1..maxNS-Pmax-r10)) OF NS-PmaxValueAerial-r18
+
NS-PmaxValue-r10 ::= SEQUENCE {
additionalPmax-r10 P-Max OPTIONAL, -- Need OP
additionalSpectrumEmission AdditionalSpectrumEmission
@@ -10604,6 +10831,11 @@ NS-PmaxValue-v10l0 ::= SEQUENCE {
additionalSpectrumEmission-v10l0 AdditionalSpectrumEmission-v10l0 OPTIONAL -- Need OP
}
+NS-PmaxValueAerial-r18 ::= SEQUENCE {
+ additionalPmax-r18 P-Max OPTIONAL, -- Need OP
+ additionalSpectrumEmission-r18 AdditionalSpectrumEmission-r18 OPTIONAL -- Need OP
+}
+
NS-PmaxListNR-r15 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValueNR-r15
@@ -10612,6 +10844,19 @@ NS-PmaxValueNR-r15 ::= SEQUENCE {
additionalSpectrumEmissionNR-r15 AdditionalSpectrumEmissionNR-r15
}
+NS-PmaxListNR-v1760 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValueNR-v1760
+
+NS-PmaxValueNR-v1760 ::= SEQUENCE {
+ additionalSpectrumEmissionNR-v1760 AdditionalSpectrumEmissionNR-v1760 OPTIONAL -- Need OR
+}
+
+NS-PmaxListNR-Aerial-r18 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValueNR-Aerial-r18
+
+NS-PmaxValueNR-Aerial-r18 ::= SEQUENCE {
+ additionalPmaxNR-r18 P-MaxNR-r15 OPTIONAL, -- Need OP
+ additionalSpectrumEmissionNR-r18 AdditionalSpectrumEmissionNR-r18 OPTIONAL -- Need OP
+}
+
PhysCellId ::= INTEGER (0..503)
@@ -10804,6 +11049,9 @@ CSI-RSRP-Range-r12 ::= INTEGER(0..97)
Hysteresis ::= INTEGER (0..30)
+HysteresisLocation-r18 ::= INTEGER (0..32767)
+
+
LocationInfo-r10 ::= SEQUENCE {
locationCoordinates-r10 CHOICE {
ellipsoid-Point-r10 OCTET STRING,
@@ -10897,11 +11145,14 @@ MeasConfig ::= SEQUENCE {
[[ fr1-Gap-r15 BOOLEAN OPTIONAL, -- Need ON
mgta-r15 BOOLEAN OPTIONAL -- Need ON
]],
- [[ measGapConfigDensePRS-r15 MeasGapConfigDensePRS-r15 OPTIONAL, -- Need ON
+ [[ measGapConfigDensePRS-r15 MeasGapConfigDensePRS-r15 OPTIONAL, -- Need ON
heightThreshRef-r15 CHOICE {
release NULL,
setup INTEGER (0..31)
} OPTIONAL --Need ON
+ ]],
+ [[ timeMeasConfig-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ locationMeasConfig-r18 ENUMERATED {true} OPTIONAL -- Need OR
]]
}
@@ -11216,6 +11467,9 @@ MeasObjectEUTRA ::= SEQUENCE {
]],
[[
measRSS-DedicatedConfig-r16 CHOICE {release NULL, setup MeasRSS-DedicatedConfig-r16} OPTIONAL -- Need ON
+ ]],
+ [[
+ cellsToAddModList-v1810 CellsToAddModList-v1810 OPTIONAL -- Need ON
]]
}
@@ -11231,6 +11485,7 @@ MeasRSS-DedicatedConfig-r16 ::= SEQUENCE {
CellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddMod
CellsToAddModList-v1610 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddMod-v1610
+CellsToAddModList-v1810 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddMod-v1810
CellsToAddMod ::= SEQUENCE {
cellIndex INTEGER (1..maxCellMeas),
@@ -11242,6 +11497,18 @@ CellsToAddMod-v1610 ::= SEQUENCE {
rss-MeasPowerBias-r16 RSS-MeasPowerBias-r16
}
+CellsToAddMod-v1810 ::= SEQUENCE {
+ satelliteId-r18 SatelliteId-r18 OPTIONAL, -- Need OR
+ ephemerisInfo-r18 CHOICE {
+ stateVectors-r18 EphemerisStateVectors-r17,
+ orbitalParameters-r18 EphemerisOrbitalParameters-r17
+ } OPTIONAL, -- Need OR
+ epochTime-r18 SEQUENCE {
+ startSFN-r18 INTEGER (0..1023),
+ startSubFrame-r18 INTEGER (0..9)
+ } OPTIONAL, -- Cond Moving
+ referenceLocation-r18 ReferenceLocation-r18 OPTIONAL -- Cond Moving
+}
ExcludedCellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF ExcludedCellsToAddMod
@@ -12025,6 +12292,9 @@ QuantityConfigWLAN-r13 ::= SEQUENCE {
}
+ReferenceLocation-r18 ::= OCTET STRING
+
+
ReportConfigEUTRA ::= SEQUENCE {
triggerType CHOICE {
event SEQUENCE {
@@ -12073,6 +12343,20 @@ ReportConfigEUTRA ::= SEQUENCE {
eventH2-r15 SEQUENCE {
h2-ThresholdOffset-r15 INTEGER (0..300),
h2-Hysteresis-r15 INTEGER (1..16)
+ },
+ eventD1-r18 SEQUENCE {
+ distanceThreshFromReference1-r18 INTEGER(0.. 65535),
+ distanceThreshFromReference2-r18 INTEGER(0.. 65535),
+ referenceLocation1-r18 ReferenceLocation-r18,
+ referenceLocation2-r18 ReferenceLocation-r18,
+ hysteresisLocation-r18 HysteresisLocation-r18,
+ reportOnLeave-r18 BOOLEAN
+ },
+ eventD2-r18 SEQUENCE {
+ distanceThreshFromReference1-r18 INTEGER(0.. 65535),
+ distanceThreshFromReference2-r18 INTEGER(0.. 65535),
+ hysteresisLocation-r18 HysteresisLocation-r18,
+ reportOnLeave-r18 BOOLEAN
}
},
hysteresis Hysteresis,
@@ -12159,7 +12443,32 @@ CondReconfigurationTriggerEUTRA-r16 ::= SEQUENCE {
hysteresis-r16 Hysteresis,
timeToTrigger-r16 TimeToTrigger
},
- ...
+ ...,
+ [[
+ condEventA4-r18 SEQUENCE {
+ a4-Threshold-r18 ThresholdEUTRA,
+ hysteresis-r18 Hysteresis,
+ timeToTrigger-r18 TimeToTrigger
+ },
+ condEventD1-r18 SEQUENCE {
+ distanceThreshFromReference1-r18 INTEGER(0.. 65535),
+ distanceThreshFromReference2-r18 INTEGER(0.. 65535),
+ referenceLocation1-r18 ReferenceLocation-r18,
+ referenceLocation2-r18 ReferenceLocation-r18,
+ hysteresisLocation-r18 HysteresisLocation-r18,
+ timeToTrigger-r18 TimeToTrigger
+ },
+ condEventD2-r18 SEQUENCE {
+ distanceThreshFromReference1-r18 INTEGER(0.. 65535),
+ distanceThreshFromReference2-r18 INTEGER(0.. 65535),
+ hysteresisLocation-r18 HysteresisLocation-r18,
+ timeToTrigger-r18 TimeToTrigger
+ },
+ condEventT1-r18 SEQUENCE {
+ t1-Threshold-r18 TimeOffsetUTC-r17,
+ duration-r18 INTEGER (1..6000)
+ }
+ ]]
}
}
@@ -12523,6 +12832,10 @@ GNSS-ID-r15 ::= SEQUENCE {
}
+GNSS-PositionFixDuration-r18 ::= ENUMERATED{
+ s1, s2, s3, s4, s5, s6, s7, s13, s19, s25, s31}
+
+
GNSS-ValidityDuration-r17 ::= ENUMERATED{
s10, s20, s30, s40, s50, s60, min5, min10,
min15, min20, min25, min30, min50, min90, min120, infinity}
@@ -12681,6 +12994,9 @@ ResumeIdentity-r13 ::= BIT STRING (SIZE(40))
RRC-TransactionIdentifier ::= INTEGER (0..3)
+SatelliteId-r18 ::= INTEGER (0..255)
+
+
SBAS-ID-r15 ::= SEQUENCE {
sbas-id-r15 ENUMERATED {waas, egnos, msas, gagan, ...},
...
@@ -12875,7 +13191,7 @@ UE-EUTRA-Capability-v15x0-IEs ::= SEQUENCE {
}
UE-EUTRA-Capability-v16c0-IEs ::= SEQUENCE {
- measParameters-v16c0 MeasParameters-v16c0,
+ measParameters-v16c0 MeasParameters-v16c0,
-- Following field is only to be used for late REL-16 extensions
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
@@ -13241,7 +13557,23 @@ UE-EUTRA-Capability-v1720-IEs ::= SEQUENCE {
UE-EUTRA-Capability-v1730-IEs ::= SEQUENCE {
phyLayerParameters-v1730 PhyLayerParameters-v1730,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UE-EUTRA-Capability-v1770-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1770-IEs ::= SEQUENCE {
+ measParameters-v1770 MeasParameters-v1770,
+ nonCriticalExtension UE-EUTRA-Capability-v1800-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1800-IEs ::= SEQUENCE {
+ measParameters-v1800 MeasParameters-v1800 OPTIONAL,
+ rf-Parameters-v1800 RF-Parameters-v1800 OPTIONAL,
+ ntn-Parameters-v1800 NTN-Parameters-v1800 OPTIONAL,
+ -- A2X capabilities
+ sl-Parameters-v1800 SL-Parameters-v1800 OPTIONAL,
+ son-Parameters-v1800 SON-Parameters-v1800,
+ ue-BasedNetwPerfMeasParameters-v1800 UE-BasedNetwPerfMeasParameters-v1800,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
UE-EUTRA-CapabilityAddXDD-Mode-r9 ::= SEQUENCE {
@@ -13349,7 +13681,7 @@ UE-EUTRA-CapabilityAddXDD-Mode-v1630 ::= SEQUENCE {
AccessStratumRelease ::= ENUMERATED {
rel8, rel9, rel10, rel11, rel12, rel13,
- rel14, rel15, ..., rel16, rel17}
+ rel14, rel15, ..., rel16, rel17, rel18}
FeatureSetsEUTRA-r15 ::= SEQUENCE {
featureSetsDL-r15 SEQUENCE (SIZE (1..maxFeatureSets-r15)) OF FeatureSetDL-r15 OPTIONAL,
@@ -13445,6 +13777,34 @@ NTN-Parameters-v1720 ::= SEQUENCE {
ntn-SegmentedPrecompensationGaps-r17 ENUMERATED {sym1,sl1,sf1} OPTIONAL
}
+NTN-Parameters-v1800 ::= SEQUENCE {
+ ntn-EventA4BasedCHO-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-LocationBasedCHO-EFC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-LocationBasedCHO-EMC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-TimeBasedCHO-r18 ENUMERATED {supported} OPTIONAL,
+ eventD1-MeasReportTrigger-r18 ENUMERATED {supported} OPTIONAL,
+ eventD2-MeasReportTrigger-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-LocationBasedMeasTrigger-EFC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-LocationBasedMeasTrigger-EMC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-TimeBasedMeasTrigger-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableSingleTB-CE-ModeA-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableMultiTB-CE-ModeA-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableSingleTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-OverriddenHarqDisableSingleTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-DCI-HarqDisableSingleTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableMultiTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-OverriddenHarqDisableMultiTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-DCI-HarqDisableMultiTB-CE-ModeB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-SemiStaticHarqDisableSPS-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkHarq-ModeB-SingleTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkHarq-ModeB-MultiTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-HarqEnhScenarioSupport-r18 ENUMERATED {ngso,gso} OPTIONAL,
+ ntn-Triggered-GNSS-Fix-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-Autonomous-GNSS-Fix-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkTxExtension-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-GNSS-EnhScenarioSupport-r18 ENUMERATED {ngso,gso} OPTIONAL
+}
+
ProcessingTimelineSet-r15 ::= ENUMERATED {set1, set2}
RLC-Parameters-r12 ::= SEQUENCE {
@@ -14049,6 +14409,15 @@ RF-Parameters-v1630 ::= SEQUENCE {
supportedBandCombinationReduced-v1630 SupportedBandCombinationReduced-v1630 OPTIONAL
}
+RF-Parameters-v1800 ::= SEQUENCE {
+ -- Support handling of aerial-specific Ns and Pmax list broadcasted by the cell
+ multiNS-PmaxAerial-r18 ENUMERATED {supported} OPTIONAL,
+ supportedBandListEUTRA-v1800 SupportedBandListEUTRA-v1800 OPTIONAL,
+ supportedBandCombination-v1800 SupportedBandCombination-v1800 OPTIONAL,
+ supportedBandCombinationAdd-v1800 SupportedBandCombinationAdd-v1800 OPTIONAL,
+ supportedBandCombinationReduced-v1800 SupportedBandCombinationReduced-v1800 OPTIONAL
+}
+
SkipSubframeProcessing-r15 ::= SEQUENCE {
skipProcessingDL-Slot-r15 INTEGER (0..3) OPTIONAL,
skipProcessingDL-SubSlot-r15 INTEGER (0..3) OPTIONAL,
@@ -14126,6 +14495,8 @@ SupportedBandCombination-v1610 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandC
SupportedBandCombination-v1630 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1630
+SupportedBandCombination-v1800 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1800
+
SupportedBandCombinationAdd-r11 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-r11
SupportedBandCombinationAdd-v11d0 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v10i0
@@ -14154,6 +14525,8 @@ SupportedBandCombinationAdd-v1610 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF Ba
SupportedBandCombinationAdd-v1630 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1630
+SupportedBandCombinationAdd-v1800 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1800
+
SupportedBandCombinationReduced-r13 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-r13
SupportedBandCombinationReduced-v1320 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1320
@@ -14176,6 +14549,8 @@ SupportedBandCombinationReduced-v1610 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) O
SupportedBandCombinationReduced-v1630 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1630
+SupportedBandCombinationReduced-v1800 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1800
+
BandCombinationParameters-r10 ::= SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandParameters-r10
BandCombinationParametersExt-r10 ::= SEQUENCE {
@@ -14308,6 +14683,10 @@ BandCombinationParameters-v1630 ::= SEQUENCE {
interBandPowerSharingAsyncDAPS-r16 ENUMERATED {supported} OPTIONAL
}
+BandCombinationParameters-v1800 ::= SEQUENCE {
+ measGapInfoNR-r18 MeasGapInfoNR-r18 OPTIONAL
+}
+
ScalingFactorSidelink-r16 ::= ENUMERATED {f0p4, f0p75, f0p8, f1}
SupportedBandwidthCombinationSet-r10 ::= BIT STRING (SIZE (1..maxBandwidthCombSet-r10))
@@ -14536,6 +14915,8 @@ SupportedBandListEUTRA-v1310 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBand
SupportedBandListEUTRA-v1320 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v1320
+SupportedBandListEUTRA-v1800 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v1800
+
SupportedBandEUTRA ::= SEQUENCE {
bandEUTRA FreqBandIndicator,
halfDuplex BOOLEAN
@@ -14553,11 +14934,16 @@ SupportedBandEUTRA-v1250 ::= SEQUENCE {
SupportedBandEUTRA-v1310 ::= SEQUENCE {
ue-PowerClass-5-r13 ENUMERATED {supported} OPTIONAL
}
+
SupportedBandEUTRA-v1320 ::= SEQUENCE {
intraFreq-CE-NeedForGaps-r13 ENUMERATED {supported} OPTIONAL,
ue-PowerClass-N-r13 ENUMERATED {class1, class2, class4} OPTIONAL
}
+SupportedBandEUTRA-v1800 ::= SEQUENCE {
+ lowerMSD-MRDC-r18 SEQUENCE (SIZE (1..maxLowerMSD-r18)) OF LowerMSD-MRDC-r18 OPTIONAL
+}
+
MeasParameters ::= SEQUENCE {
bandListEUTRA BandListEUTRA
}
@@ -14645,6 +15031,14 @@ MeasParameters-v1700 ::= SEQUENCE {
sharedSpectrumMeasNR-SA-r17 SEQUENCE (SIZE (1..maxBandsNR-r15)) OF SharedSpectrumMeasNR-r17 OPTIONAL
}
+MeasParameters-v1770 ::= SEQUENCE {
+ gaplessMeas-FR2-maxCC-r17 INTEGER (1..32) OPTIONAL
+}
+
+MeasParameters-v1800 ::= SEQUENCE {
+ bandInfoNR-v1800 SEQUENCE (SIZE (1..maxBands)) OF MeasGapInfoNR-r18
+}
+
SharedSpectrumMeasNR-r17 ::= SEQUENCE {
nr-RSSI-ChannelOccupancyReporting-r17 BOOLEAN
}
@@ -14654,6 +15048,11 @@ MeasGapInfoNR-r16 ::= SEQUENCE {
interRAT-BandListNR-SA-r16 InterRAT-BandListNR-r16 OPTIONAL
}
+MeasGapInfoNR-r18 ::= SEQUENCE {
+ interRAT-BandListNR-EN-DC-r18 InterRAT-BandListNR-r18 OPTIONAL,
+ interRAT-BandListNR-SA-r18 InterRAT-BandListNR-r18 OPTIONAL
+}
+
BandListEUTRA ::= SEQUENCE (SIZE (1..maxBands)) OF BandInfoEUTRA
BandCombinationListEUTRA-r10 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandInfoEUTRA
@@ -14673,6 +15072,8 @@ InterRAT-BandList ::= SEQUENCE (SIZE (1..maxBands)) OF InterRAT-BandInfo
InterRAT-BandListNR-r16 ::= SEQUENCE (SIZE (1..maxBandsNR-r15)) OF InterRAT-BandInfoNR-r16
+InterRAT-BandListNR-r18 ::= SEQUENCE (SIZE (1..maxBandsNR-r15)) OF InterRAT-BandInfoNR-r18
+
InterRAT-BandInfo ::= SEQUENCE {
interRAT-NeedForGaps BOOLEAN
}
@@ -14681,6 +15082,11 @@ InterRAT-BandInfoNR-r16 ::= SEQUENCE {
interRAT-NeedForGapsNR-r16 BOOLEAN
}
+InterRAT-BandInfoNR-r18 ::= SEQUENCE {
+ interRAT-NeedForInterruptionNR-r18
+ ENUMERATED {no-gap-with-interruption, no-gap-no-interruption} OPTIONAL
+}
+
IRAT-ParametersNR-r15 ::= SEQUENCE {
en-DC-r15 ENUMERATED {supported} OPTIONAL,
eventB2-r15 ENUMERATED {supported} OPTIONAL,
@@ -14734,6 +15140,21 @@ IRAT-ParametersNR-v1710 ::= SEQUENCE {
extendedBand-n77-2-r17 ENUMERATED {supported} OPTIONAL
}
+LowerMSD-MRDC-r18 ::= SEQUENCE {
+ aggressorband1-r18 FreqBandIndicatorNR-r15,
+ aggressorband2-r18 FreqBandIndicator-r11 OPTIONAL,
+ msd-Information-r18 SEQUENCE (SIZE (1.. maxLowerMSD-Info-r18)) OF MSD-Information-r18
+}
+
+MSD-Information-r18 ::= SEQUENCE {
+ msd-Type-r18 ENUMERATED {harmonic, harmonicMixing, crossBandIsolation, imd2,
+ imd3, imd4, imd5, all, spare8, spare7, spare6,
+ spare5,spare4, spare3, spare2, spare1},
+ msd-PowerClass-r18 ENUMERATED {pc1dot5, pc2, pc3},
+ msd-Class-r18 ENUMERATED {classI, classII, classIII, classIV, classV, classVI,
+ classVII, classVIII }
+}
+
EUTRA-5GC-Parameters-r15 ::= SEQUENCE {
eutra-5GC-r15 ENUMERATED {supported} OPTIONAL,
eutra-EPC-HO-EUTRA-5GC-r15 ENUMERATED {supported} OPTIONAL,
@@ -14946,6 +15367,10 @@ SON-Parameters-r9 ::= SEQUENCE {
rach-Report-r9 ENUMERATED {supported} OPTIONAL
}
+SON-Parameters-v1800 ::= SEQUENCE {
+ rach-ReportForNR-r18 ENUMERATED {supported} OPTIONAL
+}
+
PUR-Parameters-r16 ::= SEQUENCE {
pur-CP-5GC-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
pur-CP-5GC-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
@@ -14994,6 +15419,10 @@ UE-BasedNetwPerfMeasParameters-v1700 ::= SEQUENCE {
immMeasUncomBarPre-r17 ENUMERATED {supported} OPTIONAL
}
+UE-BasedNetwPerfMeasParameters-v1800 ::= SEQUENCE {
+ sigBasedEUTRA-LoggedMeasOverrideProtect-r18 ENUMERATED {supported} OPTIONAL
+}
+
OTDOA-PositioningCapabilities-r10 ::= SEQUENCE {
otdoa-UE-Assisted-r10 ENUMERATED {supported},
interFreqRSTD-Measurement-r10 ENUMERATED {supported} OPTIONAL
@@ -15301,6 +15730,11 @@ SL-Parameters-v1710 ::= SEQUENCE {
v2x-SupportedBandCombinationListEUTRA-NR-v1710 V2X-SupportedBandCombinationEUTRA-NR-v1710 OPTIONAL
}
+SL-Parameters-v1800 ::= SEQUENCE {
+ sl-A2X-SupportedBandCombinationList-r18 SL-A2X-SupportedBandCombination-r18 OPTIONAL,
+ sl-A2X-Service-r18 ENUMERATED {brid, daa, bridAndDAA} OPTIONAL
+}
+
UE-CategorySL-r15 ::= SEQUENCE {
ue-CategorySL-C-TX-r15 INTEGER(1..5),
ue-CategorySL-C-RX-r15 INTEGER(1..4)
@@ -15349,6 +15783,24 @@ V2X-BandParametersEUTRA-NR-v1710 ::= SEQUENCE {
v2x-BandParametersEUTRA-NR-v1710 OCTET STRING OPTIONAL
}
+SL-A2X-SupportedBandCombination-r18 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF SL-A2X-BandCombinationParameters-r18
+
+SL-A2X-BandCombinationParameters-r18 ::= SEQUENCE (SIZE (1.. maxSimultaneousBands-r10)) OF SL-A2X-BandParameters-r18
+
+SL-A2X-BandParameters-r18 ::= SEQUENCE {
+ a2x-FreqBandEUTRA-r18 FreqBandIndicator-r11,
+ a2x-BandParametersTxSL-r18 BandParametersTxA2X-r18 OPTIONAL,
+ a2x-BandParametersRxSL-r18 BandParametersRxA2X-r18 OPTIONAL
+}
+
+BandParametersTxA2X-r18 ::= SEQUENCE {
+ a2x-BandwidthClassTxSL-r18 V2X-BandwidthClassSL-r14
+}
+
+BandParametersRxA2X-r18 ::= SEQUENCE {
+ a2x-BandwidthClassRxSL-r18 V2X-BandwidthClassSL-r14
+}
+
SupportedBandInfoList-r12 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandInfo-r12
SupportedBandInfo-r12 ::= SEQUENCE {
@@ -15973,6 +16425,8 @@ SL-CommResourcePoolV2X-r14 ::= SEQUENCE {
...,
[[ sl-MinT2ValueList-r15 SL-MinT2ValueList-r15 OPTIONAL, -- Need OR
cbr-pssch-TxConfigList-v1530 SL-CBR-PPPP-TxConfigList-v1530 OPTIONAL -- Need OR
+ ]],
+ [[ sl-A2X-Service-r18 ENUMERATED {brid, daa, bridAndDAA, spare1} OPTIONAL -- Cond A2X
]]
}
@@ -16702,6 +17156,8 @@ maxCellIntra INTEGER ::= 16 -- Maximum number of neighbouring intra-frequency
maxCellListGERAN INTEGER ::= 3 -- Maximum number of lists of GERAN cells
maxCellMeas INTEGER ::= 32 -- Maximum number of entries in each of the
-- cell lists in a measurement object
+maxCellRAReportNR-r18 INTEGER ::= 8 -- Maximum number of unique Cells identities of RA
+ -- reports included in the NR RA report container
maxCellReport INTEGER ::= 8 -- Maximum number of reported cells/CSI-RS resources
maxCellSFTD INTEGER ::= 3 -- Maximum number of cells for SFTD reporting
maxCellAllowedNR-r16 INTEGER ::= 16 -- Maximum number of allowlisted NR cells in SIB24
@@ -16765,6 +17221,10 @@ maxIdleMeasCarriers-r16 INTEGER ::= 8 -- Maximum number of neighbouring inter-
maxLCG-r13 INTEGER ::= 4 -- Maximum number of logical channel groups
maxLogMeasReport-r10 INTEGER ::= 520 -- Maximum number of logged measurement entries
-- that can be reported by the UE in one message
+maxLowerMSD-r18 INTEGER ::= 256 -- Maximum number of lower MSD capability sets for
+ -- a victim band
+maxLowerMSD-Info-r18 INTEGER ::= 64 -- Maximum number of lower MSD capability sets for
+ -- a band combination
maxMBSFN-Allocations INTEGER ::= 8 -- Maximum number of MBSFN frame allocations with
-- different offset
maxMBSFN-Area INTEGER ::= 8
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
index e8f39de8..870ed39b 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
EUTRA-Sidelink-Preconf DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
index 98b92e6b..6d01a7c0 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
EUTRA-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
@@ -74,7 +74,7 @@ FROM EUTRA-RRC-Definitions;
VarConditionalReconfiguration ::= SEQUENCE {
- -- Conditional reconfigurations list
+ -- Conditional reconfigurations list
condReconfigurationList-r16 CondReconfigurationToAddModList-r16
OPTIONAL
}
@@ -145,7 +145,8 @@ VarLogMeasReport-r11 ::= SEQUENCE {
tce-Id-r10 OCTET STRING (SIZE (1)),
plmn-IdentityList-r11 PLMN-IdentityList3-r11,
absoluteTimeInfo-r10 AbsoluteTimeInfo-r10,
- logMeasInfoList-r10 LogMeasInfoList2-r10
+ logMeasInfoList-r10 LogMeasInfoList2-r10,
+ sigLoggedMeasType-r18 ENUMERATED {true}
}
LogMeasInfoList2-r10 ::= SEQUENCE (SIZE (1..maxLogMeas-r10)) OF LogMeasInfo-r10
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
index 85af838c..38a1104c 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
NBIOT-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
index b68e6a8a..e9259f5c 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
NBIOT-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -17,6 +17,7 @@ IMPORTS
C-RNTI,
DedicatedInfoNAS,
DRB-Identity,
+ GNSS-PositionFixDuration-r18,
GNSS-ValidityDuration-r17,
InitialUE-Identity,
IntraFreqExcludedCellList,
@@ -35,11 +36,13 @@ IMPORTS
maxPageRec,
maxPLMN-r11,
maxSAI-MBMS-r11,
+ maxSat-r17,
maxSIB,
maxSIB-1,
MBMS-SAI-r11,
MBMS-SAI-List-r11,
MBMSSessionInfo-r13,
+ NeighSatelliteInfoList-r18,
NextHopChainingCount,
NG-5G-S-TMSI-r15,
PagingUE-Identity,
@@ -61,8 +64,11 @@ IMPORTS
RSRP-Range,
S-NSSAI-r15,
S-TMSI,
+ SatelliteId-r18,
SatelliteInfoList-r17,
+ SatelliteInfoList-v1800,
ServingSatelliteInfo-r17,
+ ServingSatelliteInfo-v1820,
SetupRelease,
ShortMAC-I,
SystemInformationBlockType16-r11,
@@ -243,7 +249,7 @@ MasterInformationBlock-NB ::= SEQUENCE {
},
additionalTransmissionSIB1-r15 BOOLEAN,
ab-Enabled-5GC-r16 BOOLEAN,
- partEARFCN-17 CHOICE {
+ partEARFCN-r17 CHOICE {
spare BIT STRING (SIZE (2)),
earfcn-LSB BIT STRING (SIZE (2))
},
@@ -403,7 +409,12 @@ RRCConnectionReconfiguration-NB-r13-IEs ::= SEQUENCE {
radioResourceConfigDedicated-r13 RadioResourceConfigDedicated-NB-r13 OPTIONAL, -- Need ON
fullConfig-r13 ENUMERATED {true} OPTIONAL, -- Cond Reestab
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionReconfiguration-NB-v16f0-IEs OPTIONAL
+}
+
+RRCConnectionReconfiguration-NB-v16f0-IEs ::= SEQUENCE {
+ obtainLocationNB-r16 ENUMERATED {setup} OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -472,9 +483,15 @@ RRCConnectionReestablishmentComplete-NB-v1610-IEs ::= SEQUENCE {
RRCConnectionReestablishmentComplete-NB-v1710-IEs ::= SEQUENCE {
gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
+ nonCriticalExtension RRCConnectionReestablishmentComplete-NB-v1800-IEs OPTIONAL
+}
+
+RRCConnectionReestablishmentComplete-NB-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
+
RRCConnectionReestablishmentRequest-NB ::= SEQUENCE {
criticalExtensions CHOICE {
rrcConnectionReestablishmentRequest-r13
@@ -676,6 +693,11 @@ RRCConnectionResume-NB-r13-IEs ::= SEQUENCE {
RRCConnectionResume-NB-v1610-IEs ::= SEQUENCE {
fullConfig-r16 ENUMERATED {true} OPTIONAL, -- Cond 5GC
+ nonCriticalExtension RRCConnectionResume-NB-v16f0-IEs OPTIONAL
+}
+
+RRCConnectionResume-NB-v16f0-IEs ::= SEQUENCE {
+ obtainLocationNB-r16 ENUMERATED {setup} OPTIONAL, -- Need OR
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -707,7 +729,12 @@ RRCConnectionResumeComplete-NB-v1610-IEs ::= SEQUENCE {
}
RRCConnectionResumeComplete-NB-v1710-IEs ::= SEQUENCE {
- gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension RRCConnectionResumeComplete-NB-v1800-IEs OPTIONAL
+}
+
+RRCConnectionResumeComplete-NB-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -809,7 +836,12 @@ RRCConnectionSetupComplete-NB-v1610-IEs ::= SEQUENCE {
}
RRCConnectionSetupComplete-NB-v1710-IEs ::= SEQUENCE {
- gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension RRCConnectionSetupComplete-NB-v1800-IEs OPTIONAL
+}
+
+RRCConnectionSetupComplete-NB-v1800-IEs ::= SEQUENCE {
+ gnss-PositionFixDuration-r18 GNSS-PositionFixDuration-r18 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -907,7 +939,8 @@ SystemInformation-NB-r13-IEs ::= SEQUENCE {
sib23-v1530 SystemInformationBlockType23-NB-r15,
sib27-v1610 SystemInformationBlockType27-NB-r16,
sib31-v1700 SystemInformationBlockType31-NB-r17,
- sib32-v1700 SystemInformationBlockType32-NB-r17
+ sib32-v1700 SystemInformationBlockType32-NB-r17,
+ sib33-v1800 SystemInformationBlockType33-NB-r18
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
@@ -1054,7 +1087,9 @@ SIB-Type-NB-r13 ::= ENUMERATED {
SIB-Type-NB-v1530 ::= ENUMERATED {
sibType23-NB-r15, sibType27-NB-r16, sibType31-NB-r17,
- sibType32-NB-r17, spare4, spare3, spare2, spare1}
+ sibType32-NB-r17, sibType33-NB-r18, spare3, spare2,
+ spare1
+}
CellSelectionInfo-NB-v1350 ::= SEQUENCE {
delta-RxLevMin-v1350 INTEGER (-8..-1)
@@ -1201,6 +1236,8 @@ SystemInformationBlockType2-NB-r13 ::= SEQUENCE {
cp-PUR-5GC-r16 ENUMERATED {true} OPTIONAL, -- Need OR
up-PUR-5GC-r16 ENUMERATED {true} OPTIONAL, -- Need OR
rai-ActivationEnh-r16 ENUMERATED {true} OPTIONAL -- Need OR
+ ]],
+ [[ gnss-PositionFixDurationReporting-r18 ENUMERATED {true} OPTIONAL -- Need OR
]]
}
@@ -1240,6 +1277,8 @@ SystemInformationBlockType3-NB-r13 ::= SEQUENCE {
]],
[[ connMeasConfig-r17 ConnMeasConfig-NB-r17 OPTIONAL, -- Need OR
t-Service-r17 TimeOffsetUTC-r17 OPTIONAL -- Need OR
+ ]],
+ [[ satelliteAssistanceInfo-r18 SEQUENCE (SIZE(1..maxSat-r17)) OF SatelliteId-r18 OPTIONAL -- Need OR
]]
}
@@ -1293,12 +1332,15 @@ SystemInformationBlockType5-NB-r13 ::= SEQUENCE {
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
[[ scptm-FreqOffset-r14 INTEGER (1..8) OPTIONAL -- Need OP
+ ]],
+ [[ interFreqCarrierFreqList-v1820 InterFreqCarrierFreqList-NB-v1820 OPTIONAL -- Need OP
]]
}
InterFreqCarrierFreqList-NB-r13 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-NB-r13
+InterFreqCarrierFreqList-NB-v1820 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-NB-v1820
InterFreqCarrierFreqInfo-NB-r13 ::= SEQUENCE {
dl-CarrierFreq-r13 CarrierFreq-NB-r13,
@@ -1323,6 +1365,10 @@ OPTIONAL, -- Need OP
]]
}
+InterFreqCarrierFreqInfo-NB-v1820 ::= SEQUENCE {
+ satelliteAssistanceInfo-r18 SEQUENCE (SIZE(1..maxSat-r17)) OF SatelliteId-r18 OPTIONAL -- Need OR
+}
+
InterFreqNeighCellList-NB-r13 ::= SEQUENCE (SIZE (1..maxCellInter)) OF PhysCellId
InterFreqNeighCellList-NB-v1530 ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo-NB-v1530
@@ -1607,13 +1653,26 @@ CarrierFreqsGERAN-NB-r16 ::= SEQUENCE {
SystemInformationBlockType31-NB-r17 ::= SEQUENCE {
servingSatelliteInfo-r17 ServingSatelliteInfo-r17,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- ...
+ ...,
+ [[ servingSatelliteInfo-v1820 ServingSatelliteInfo-v1820 OPTIONAL -- Need OR
+ ]]
}
SystemInformationBlockType32-NB-r17 ::= SEQUENCE {
satelliteInfoList-r17 SatelliteInfoList-r17 OPTIONAL, -- Need OR
lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...,
+ [[ satelliteInfoList-v1800 SatelliteInfoList-v1800 OPTIONAL -- Need OR
+ ]]
+}
+
+
+SystemInformationBlockType33-NB-r18 ::= SEQUENCE {
+ neighSatelliteInfoList-r18 NeighSatelliteInfoList-r18 OPTIONAL, -- Need OR
+ neighValidityDuration-r18 ENUMERATED {s5, s10, s15, s20, s25, s30, s35, s40,
+ s45, s50, s55, s60, s120, s180, s240, s900}
+ OPTIONAL, -- Need OP lateNonCriticalExtension OCTET STRING OPTIONAL,
...
}
@@ -1872,11 +1931,19 @@ NPDSCH-ConfigDedicated-NB-v1710 ::= SEQUENCE {
npdsch-16QAM-Config-r17 CHOICE {release NULL, setup NPDSCH-16QAM-Config-NB-r17}
}
+NPDSCH-ConfigDedicated-NB-v1800 ::= SEQUENCE {
+ downlinkHARQ-FeedbackDisabledBitmap-NB-r18
+ CHOICE {release NULL, setup DownlinkHARQ-FeedbackDisabledBitmap-NB-r18} OPTIONAL, -- Need ON
+ downlinkHARQ-FeedbackDisabledDCI-NB-r18 ENUMERATED {true} OPTIONAL -- Need OR
+}
+
NPDSCH-16QAM-Config-NB-r17 ::=SEQUENCE{
nrs-PowerRatio-r17 ENUMERATED {dB-6, dB-4dot77, dB-3, dB-1dot77, dB0, dB1, dB2, dB3} OPTIONAL, -- Need OR
nrs-PowerRatioWithCRS-r17 ENUMERATED {dB-6, dB-4dot77, dB-3, dB-1dot77, dB0, dB1, dB2, dB3} OPTIONAL -- Cond InBand
}
+DownlinkHARQ-FeedbackDisabledBitmap-NB-r18 ::= BIT STRING (SIZE(2))
+
NPRACH-ConfigSIB-NB-r13 ::= SEQUENCE {
nprach-CP-Length-r13 ENUMERATED {us66dot7, us266dot7},
@@ -2110,12 +2177,17 @@ NPUSCH-ConfigDedicated-NB-v1700 ::= SEQUENCE {
npusch-16QAM-Config-r17 ENUMERATED {true} OPTIONAL -- Need OR
}
+NPUSCH-ConfigDedicated-NB-v1800 ::= SEQUENCE {
+ uplinkHARQ-Mode-r18 CHOICE {release NULL, setup UplinkHARQ-Mode-NB-r18}
+}
+
NPUSCH-TxDuration-NB-r17 ::= SEQUENCE {
npusch-TxDuration-r17 ENUMERATED {ms2, ms4, ms8, ms16, ms32, ms64, ms128, ms256}
}
ACK-NACK-NumRepetitions-NB-r13 ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, r128}
+UplinkHARQ-Mode-NB-r18 ::= BIT STRING (SIZE(2))
PDCP-Config-NB-r13 ::= SEQUENCE {
@@ -2178,6 +2250,9 @@ PhysicalConfigDedicated-NB-r13 ::= SEQUENCE {
uplinkSegmentedPrecompensationGap-r17 ENUMERATED {sym1,sl1,sl2} OPTIONAL -- Need OR
]],
[[ npusch-ConfigDedicated-v1740 NPUSCH-ConfigDedicated-NB-v1700 OPTIONAL -- Need ON
+ ]],
+ [[ npdsch-ConfigDedicated-v1800 NPDSCH-ConfigDedicated-NB-v1800 OPTIONAL, -- Need ON
+ npusch-ConfigDedicated-v1800 NPUSCH-ConfigDedicated-NB-v1800 OPTIONAL -- Need ON
]]
}
@@ -2374,6 +2449,12 @@ RadioResourceConfigDedicated-NB-r13 ::= SEQUENCE {
[[ schedulingRequestConfig-r15 SchedulingRequestConfig-NB-r15 OPTIONAL -- Need ON
]],
[[ newUE-Identity-r16 C-RNTI OPTIONAL -- Need OP
+ ]],
+ [[ gnss-AutonomousEnabled-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ ul-TransmissionExtensionEnabled-r18 ENUMERATED {true} OPTIONAL, -- Need OR
+ ul-TransmissionExtensionValue-r18 ENUMERATED {sf500, sf750, sf1280, sf1920,
+ sf2560, sf5120, sf10240, spare1}
+ OPTIONAL -- Need OR
]]
}
@@ -2545,7 +2626,7 @@ SR-NPRACH-Resource-NB-r15 ::= SEQUENCE {
p0-SR-r15 INTEGER (-126..24),
alpha-r15 ENUMERATED {al0, al04, al05, al06, al07, al08, al09, al1}}
-SR-SPS-BSR-Config-NB-r15 ::= CHOICE {
+SR-SPS-BSR-Config-NB-r15 ::= CHOICE {
release NULL,
setup SEQUENCE {
semiPersistSchedC-RNTI-r15 C-RNTI,
@@ -2759,10 +2840,17 @@ UE-Capability-NB-v1610-IEs ::= SEQUENCE {
UE-Capability-NB-v16x0-IEs ::= SEQUENCE {
-- Following field is only to be used for late REL-16 extensions
- lateNonCriticalExtension OCTET STRING OPTIONAL,
+ lateNonCriticalExtension OCTET STRING (CONTAINING UE-EUTRA-Capability-v16f0-IEs) OPTIONAL,
nonCriticalExtension UE-Capability-NB-v1700-IEs OPTIONAL
}
+-- Late non-critical extensions
+UE-EUTRA-Capability-v16f0-IEs ::= SEQUENCE {
+ son-Parameters-v16f0 SON-Parameters-NB-v16f0,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- Regular non-critical extensions
UE-Capability-NB-v1700-IEs ::= SEQUENCE {
coverageBasedPaging-r17 ENUMERATED {supported} OPTIONAL,
phyLayerParameters-v1700 PhyLayerParameters-NB-v1700,
@@ -2779,6 +2867,11 @@ UE-Capability-NB-v1710-IEs ::= SEQUENCE {
UE-Capability-NB-v1720-IEs ::= SEQUENCE {
ntn-Parameters-v1720 NTN-Parameters-NB-v1720,
+ nonCriticalExtension UE-Capability-NB-v1800-IEs OPTIONAL
+}
+
+UE-Capability-NB-v1800-IEs ::= SEQUENCE {
+ ntn-Parameters-v1800 NTN-Parameters-NB-v1800 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -2801,7 +2894,7 @@ TDD-UE-Capability-NB-v1710 ::= SEQUENCE {
phyLayerParameters-v1710 PhyLayerParameters-NB-v1700 OPTIONAL
}
-AccessStratumRelease-NB-r13 ::= ENUMERATED {rel13, rel14, rel15, rel16, rel17, spare3, spare2, spare1, ...}
+AccessStratumRelease-NB-r13 ::= ENUMERATED {rel13, rel14, rel15, rel16, rel17, rel18, spare2, spare1, ...}
PDCP-Parameters-NB-r13 ::= SEQUENCE {
supportedROHC-Profiles-r13 SEQUENCE {
@@ -2846,6 +2939,25 @@ NTN-Parameters-NB-v1720 ::= SEQUENCE {
ntn-SegmentedPrecompensationGaps-r17 ENUMERATED {sym1,sl1,sl2} OPTIONAL
}
+NTN-Parameters-NB-v1800 ::= SEQUENCE {
+ ntn-LocationBasedMeasTrigger-EFC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-LocationBasedMeasTrigger-EMC-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-TimeBasedMeasTrigger-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableSingleTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-OverriddenHarqDisableSingleTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-DCI-HarqDisableSingleTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-RRC-HarqDisableMultiTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-OverriddenHarqDisableMultiTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-DCI-HarqDisableMultiTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkHarq-ModeB-SingleTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkHarq-ModeB-MultiTB-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-HarqEnhScenarioSupport-r18 ENUMERATED {ngso,gso} OPTIONAL,
+ ntn-Triggered-GNSS-Fix-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-Autonomous-GNSS-Fix-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-UplinkTxExtension-r18 ENUMERATED {supported} OPTIONAL,
+ ntn-GNSS-EnhScenarioSupport-r18 ENUMERATED {ngso,gso} OPTIONAL
+}
+
MeasParameters-NB-r16 ::= SEQUENCE {
dl-ChannelQualityReporting-r16 ENUMERATED {supported} OPTIONAL
}
@@ -2934,6 +3046,10 @@ SON-Parameters-NB-r16 ::= SEQUENCE {
rach-Report-r16 ENUMERATED {supported} OPTIONAL
}
+SON-Parameters-NB-v16f0 ::= SEQUENCE {
+ locationInfo-r16 ENUMERATED {supported} OPTIONAL
+}
+
UE-RadioPagingInfo-NB-r13 ::= SEQUENCE {
ue-Category-NB-r13 ENUMERATED {nb1} OPTIONAL,
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
index 3c081585..df13009a 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
NBIOT-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
index d7ea3c18..217cae94 100644
--- a/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V17.5.0 (2023-06)
+-- 3GPP TS 36.331 V18.2.0 (2024-06)
PC5-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
index ba557c45..96c5ba5e 100644
--- a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
+++ b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
@@ -1,6 +1,6 @@
# lte-rrc.cnf
# lte-rrc conformation file
-# Copyright 2008 Vincent Helfre, 2009-2023 Pascal Quantin
+# Copyright 2008 Vincent Helfre, 2009-2024 Pascal Quantin
#.OPT
PER
@@ -655,6 +655,7 @@ T-StatusProhibit
WLAN-backhaulRate-r12
#.EXPORTS
+CellIdListNR-r18_PDU
CellsToAddModListNR-r15_PDU
DL-CarrierConfigCommon-NB-r14_PDU
DL-DCCH-Message_PDU
@@ -703,6 +704,7 @@ VisitedCellInfoList-r12_PDU
#.END
#.PDU
+CellIdListNR-r18
CellsToAddModListNR-r15
DL-CarrierConfigCommon-NB-r14
HandoverCommand
@@ -851,9 +853,9 @@ SI-OrPSI-GERAN TYPE_PREFIX
%(DEFAULT_BODY)s
#.FN_BODY RAT-Type VAL_PTR = &rat_type
- guint32 rat_type;
+ uint32_t rat_type;
%(DEFAULT_BODY)s
- private_data_set_rat_type(actx, (guint8)rat_type);
+ private_data_set_rat_type(actx, (uint8_t)rat_type);
#RAT-Type ::= ENUMERATED {
# eutra, utra, geran-cs, geran-ps, cdma2000-1XRTT,
@@ -888,10 +890,10 @@ SI-OrPSI-GERAN TYPE_PREFIX
#.FN_FTR UE-CapabilityRAT-Container/ueCapabilityRAT-Container
if(ue_cap_tvb){
- guint32 length;
+ uint32_t length;
proto_item *item;
proto_tree *subtree, *subtree2;
- guint8 byte;
+ uint8_t byte;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_UE_CapabilityRAT_Container);
switch(private_data_get_rat_type(actx)){
case RAT_Type_eutra:
@@ -907,12 +909,12 @@ if(ue_cap_tvb){
/* Mobile Station Classmark 2 is formatted as TLV with the two first bytes set to 0x33 0x03 */
subtree2 = proto_tree_add_subtree(subtree, ue_cap_tvb, 0, 5,
ett_lte_rrc_UE_CapabilityRAT_Container, &item, "Mobile Station Classmark 2");
- byte = tvb_get_guint8(ue_cap_tvb, 0);
+ byte = tvb_get_uint8(ue_cap_tvb, 0);
if (byte != 0x33) {
expert_add_info_format(actx->pinfo, item, &ei_lte_rrc_unexpected_type_value,
"Unexpected type value (found 0x%02X)", byte);
}
- byte = tvb_get_guint8(ue_cap_tvb, 1);
+ byte = tvb_get_uint8(ue_cap_tvb, 1);
if (byte != 0x03) {
expert_add_info_format(actx->pinfo, item, &ei_lte_rrc_unexpected_length_value,
"Unexpected length value (found %d)", byte);
@@ -1100,15 +1102,15 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
%(DEFAULT_BODY)s
#.FN_BODY Handover/targetRAT-Type VAL_PTR = &target_rat_type
- guint32 target_rat_type;
+ uint32_t target_rat_type;
%(DEFAULT_BODY)s
- private_data_set_rat_target_type(actx, (guint8)target_rat_type);
+ private_data_set_rat_target_type(actx, (uint8_t)target_rat_type);
#.FN_BODY Handover/targetRAT-MessageContainer VAL_PTR = &target_rat_msg_cont_tvb
tvbuff_t *target_rat_msg_cont_tvb = NULL;
%(DEFAULT_BODY)s
if(target_rat_msg_cont_tvb){
- guint8 byte;
+ uint8_t byte;
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_targetRAT_MessageContainer);
switch (private_data_get_rat_target_type(actx)){
@@ -1119,7 +1121,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
break;
case T_targetRAT_Type_geran:
/* geran */
- byte = tvb_get_guint8(target_rat_msg_cont_tvb, 0);
+ byte = tvb_get_uint8(target_rat_msg_cont_tvb, 0);
if (byte == 0x06) {
if (gsm_a_dtap_handle) {
lte_rrc_call_dissector(gsm_a_dtap_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree);
@@ -1127,7 +1129,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
} else {
if (gsm_rlcmac_dl_handle) {
tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite();
- guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1);
+ uint8_t *pd = (uint8_t *) wmem_alloc(actx->pinfo->pool, 1);
pd[0] = 0x40;
tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_child_real_data(tvb, pd, 1, 1));
tvb_composite_append(gsm_rlcmac_dl_tvb, target_rat_msg_cont_tvb);
@@ -1160,7 +1162,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
#.FN_BODY Handover/nas-SecurityParamFromEUTRA VAL_PTR = &nas_sec_param_from_eutra_tvb
tvbuff_t *nas_sec_param_from_eutra_tvb = NULL;
- guint32 length;
+ uint32_t length;
proto_tree *subtree;
%(DEFAULT_BODY)s
@@ -1175,7 +1177,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
#.FN_BODY SecurityConfigHO/handoverType/interRAT/nas-SecurityParamToEUTRA VAL_PTR = &nas_sec_param_to_eutra_tvb
tvbuff_t *nas_sec_param_to_eutra_tvb = NULL;
- guint32 length;
+ uint32_t length;
proto_tree *subtree;
%(DEFAULT_BODY)s
@@ -1204,15 +1206,15 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
}
#.FN_BODY SI-OrPSI-GERAN/si
- private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */
+ private_data_set_si_or_psi_geran(actx, (uint8_t)SI_OrPSI_GERAN_si); /* SI message */
%(DEFAULT_BODY)s
#.FN_BODY SI-OrPSI-GERAN/psi
- private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_psi); /* PSI message */
+ private_data_set_si_or_psi_geran(actx, (uint8_t)SI_OrPSI_GERAN_psi); /* PSI message */
%(DEFAULT_BODY)s
#.FN_BODY CellInfoGERAN-r9/systemInformation-r9
- private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */
+ private_data_set_si_or_psi_geran(actx, (uint8_t)SI_OrPSI_GERAN_si); /* SI message */
%(DEFAULT_BODY)s
#.FN_BODY SystemInfoListGERAN/_item VAL_PTR = &sys_info_list_tvb
@@ -1226,7 +1228,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
/* SI message */
if (gsm_a_dtap_handle) {
tvbuff_t *si_tvb = tvb_new_composite();
- guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1);
+ uint8_t *pd = (uint8_t *) wmem_alloc(actx->pinfo->pool, 1);
pd[0] = 0x06;
tvb_composite_append(si_tvb, tvb_new_child_real_data(tvb, pd, 1, 1));
tvb_composite_append(si_tvb, sys_info_list_tvb);
@@ -1239,7 +1241,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
/* PSI message */
if (gsm_rlcmac_dl_handle) {
tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite();
- guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1);
+ uint8_t *pd = (uint8_t *) wmem_alloc(actx->pinfo->pool, 1);
pd[0] = 0x40;
tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_child_real_data(tvb, pd, 1, 1));
tvb_composite_append(gsm_rlcmac_dl_tvb, sys_info_list_tvb);
@@ -1259,7 +1261,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
#.FN_FTR SystemTimeInfoCDMA2000/cdma-SystemTime/asynchronousSystemTime
if (async_system_time_tvb) {
- guint64 bits;
+ uint64_t bits;
nstime_t ts;
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo);
@@ -1276,7 +1278,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
#.FN_FTR SystemTimeInfoCDMA2000/cdma-SystemTime/synchronousSystemTime
if (sync_system_time_tvb) {
- guint64 bits;
+ uint64_t bits;
nstime_t ts;
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo);
@@ -1323,7 +1325,7 @@ NeighCellConfig TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lte_rrc_neighCellCon
#.FN_FTR NeighCellConfig
if (neigh_cell_config_tvb) {
- guint bitvalue = tvb_get_bits8(neigh_cell_config_tvb, 0, 2);
+ unsigned bitvalue = tvb_get_bits8(neigh_cell_config_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, neigh_cell_config_tvb, 0, 1, bitvalue);
}
@@ -1388,12 +1390,12 @@ NeighCellConfig TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lte_rrc_neighCellCon
%(DEFAULT_BODY)s
if (gnss_tod_msec_tvb) {
asn1_ctx_t asn1_ctx;
- asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, actx->pinfo);
- dissect_per_constrained_integer(gnss_tod_msec_tvb, 0, &asn1_ctx, tree, hf_index, 0U, 3599999U, NULL, FALSE);
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, false, actx->pinfo);
+ dissect_per_constrained_integer(gnss_tod_msec_tvb, 0, &asn1_ctx, tree, hf_index, 0U, 3599999U, NULL, false);
}
#.TYPE_ATTR
-LocationInfo-r10/gnss-TOD-msec-r10 TYPE=FT_UINT24 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
+LocationInfo-r10/gnss-TOD-msec-r10 TYPE=FT_UINT24 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_milliseconds)
#.FN_BODY LocationInfo-r10/eag_1/verticalVelocityInfo-r15/verticalVelocity-r15 VAL_PTR = &vertical_velocity_tvb
tvbuff_t *vertical_velocity_tvb = NULL;
@@ -1419,17 +1421,17 @@ LogMeasResultBT-r15/bt-Addr-r15 TYPE=FT_ETHER DISPLAY=BASE_NONE
actx->created_item = proto_tree_add_item(tree, hf_index, bt_Addr_tvb, 0, 6, ENC_NA);
#.TYPE_ATTR
-LogMeasResultBT-r15/rssi-BT-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+LogMeasResultBT-r15/rssi-BT-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.FN_BODY AbsoluteTimeInfo-r10 VAL_PTR = &abs_time_info_tvb
tvbuff_t *abs_time_info_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR AbsoluteTimeInfo-r10
if (abs_time_info_tvb) {
- const gchar *str, *hf_str;
+ const char *str, *hf_str;
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_absTimeInfo);
- str = tvb_bcd_dig_to_str(actx->pinfo->pool, abs_time_info_tvb, 0, 6, NULL, FALSE);
+ str = tvb_bcd_dig_to_str(actx->pinfo->pool, abs_time_info_tvb, 0, 6, NULL, false);
hf_str = wmem_strdup_printf(actx->pinfo->pool, "%c%c-%c%c-%c%c %c%c:%c%c:%c%c", str[0], str[1],
str[2], str[3], str[4], str[5], str[6], str[7], str[8], str[9], str[10], str[11]);
proto_tree_add_string(subtree, hf_lte_rrc_absolute_time, abs_time_info_tvb, 0, 6, hf_str);
@@ -1514,14 +1516,14 @@ SystemInformationBlockType11/messageIdentifier TYPE=FT_UINT16 DISPLAY=BASE_DEC|B
}
#.FN_BODY SystemInformationBlockType11/warningMessageSegmentType VAL_PTR=&segment_type
- guint32 segment_type;
+ uint32_t segment_type;
%(DEFAULT_BODY)s
- private_data_set_warning_message_segment_type(actx, (guint8)segment_type);
+ private_data_set_warning_message_segment_type(actx, (uint8_t)segment_type);
#.FN_BODY SystemInformationBlockType11/warningMessageSegmentNumber VAL_PTR=&segment_number
- guint32 segment_number;
+ uint32_t segment_number;
%(DEFAULT_BODY)s
- private_data_set_warning_message_segment_number(actx, (guint8)segment_number);
+ private_data_set_warning_message_segment_number(actx, (uint8_t)segment_number);
#.FN_BODY SystemInformationBlockType11/dataCodingScheme VAL_PTR=&data_coding_scheme_tvb
tvbuff_t *data_coding_scheme_tvb = NULL;
@@ -1530,10 +1532,10 @@ SystemInformationBlockType11/messageIdentifier TYPE=FT_UINT16 DISPLAY=BASE_DEC|B
#.FN_FTR SystemInformationBlockType11/dataCodingScheme
if (data_coding_scheme_tvb) {
proto_tree *subtree;
- guint32 dataCodingScheme;
+ uint32_t dataCodingScheme;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme);
dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0);
- wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)),
+ wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((unsigned)private_data_get_message_identifier(actx)),
GUINT_TO_POINTER(dataCodingScheme));
}
@@ -1545,16 +1547,16 @@ SystemInformationBlockType11/messageIdentifier TYPE=FT_UINT16 DISPLAY=BASE_DEC|B
if (warning_msg_seg_tvb) {
proto_tree *subtree;
tvbuff_t *frag_tvb;
- gpointer p_dcs;
+ void *p_dcs;
fragment_head *frag_data = fragment_add_seq_check(&lte_rrc_sib11_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo,
private_data_get_message_identifier(actx), NULL,
private_data_get_warning_message_segment_number(actx),
tvb_reported_length(warning_msg_seg_tvb),
- private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE);
+ private_data_get_warning_message_segment_type(actx) ? false : true);
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment);
frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB11 warning message",
frag_data, &lte_rrc_sib11_frag_items, NULL, subtree);
- p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)));
+ p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((unsigned)private_data_get_message_identifier(actx)));
if (frag_tvb && p_dcs) {
dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs));
}
@@ -1589,14 +1591,14 @@ SystemInformationBlockType12-r9/messageIdentifier-r9 TYPE=FT_UINT16 DISPLAY=BASE
}
#.FN_BODY SystemInformationBlockType12-r9/warningMessageSegmentType-r9 VAL_PTR=&segment_type
- guint32 segment_type;
+ uint32_t segment_type;
%(DEFAULT_BODY)s
- private_data_set_warning_message_segment_type(actx, (guint8)segment_type);
+ private_data_set_warning_message_segment_type(actx, (uint8_t)segment_type);
#.FN_BODY SystemInformationBlockType12-r9/warningMessageSegmentNumber-r9 VAL_PTR=&segment_number
- guint32 segment_number;
+ uint32_t segment_number;
%(DEFAULT_BODY)s
- private_data_set_warning_message_segment_number(actx, (guint8)segment_number);
+ private_data_set_warning_message_segment_number(actx, (uint8_t)segment_number);
#.FN_BODY SystemInformationBlockType12-r9/dataCodingScheme-r9 VAL_PTR=&data_coding_scheme_tvb
tvbuff_t *data_coding_scheme_tvb = NULL;
@@ -1605,10 +1607,10 @@ SystemInformationBlockType12-r9/messageIdentifier-r9 TYPE=FT_UINT16 DISPLAY=BASE
#.FN_FTR SystemInformationBlockType12-r9/dataCodingScheme-r9
if (data_coding_scheme_tvb) {
proto_tree *subtree;
- guint32 dataCodingScheme;
+ uint32_t dataCodingScheme;
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme);
dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0);
- wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)),
+ wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((unsigned)private_data_get_message_identifier(actx)),
GUINT_TO_POINTER(dataCodingScheme));
}
@@ -1620,16 +1622,16 @@ SystemInformationBlockType12-r9/messageIdentifier-r9 TYPE=FT_UINT16 DISPLAY=BASE
if (warning_msg_seg_tvb) {
proto_tree *subtree;
tvbuff_t *frag_tvb;
- gpointer p_dcs;
+ void *p_dcs;
fragment_head *frag_data = fragment_add_seq_check(&lte_rrc_sib12_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo,
private_data_get_message_identifier(actx), NULL,
private_data_get_warning_message_segment_number(actx),
tvb_reported_length(warning_msg_seg_tvb),
- private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE);
+ private_data_get_warning_message_segment_type(actx) ? false : true);
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment);
frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB12 warning message",
frag_data, &lte_rrc_sib12_frag_items, NULL, subtree);
- p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)));
+ p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((unsigned)private_data_get_message_identifier(actx)));
if (frag_tvb && p_dcs) {
dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs));
}
@@ -1647,21 +1649,21 @@ SystemInformationBlockType16-r11/timeInfo-r11/dayLightSavingTime-r11 TYPE=FT_UIN
#.FN_FTR SystemInformationBlockType16-r11/timeInfo-r11/dayLightSavingTime-r11
if (daylight_saving_time_tvb) {
- guint bitvalue = tvb_get_bits8(daylight_saving_time_tvb, 0, 2);
+ unsigned bitvalue = tvb_get_bits8(daylight_saving_time_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, daylight_saving_time_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
-SystemInformationBlockType16-r11/timeInfo-r11/leapSeconds-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+SystemInformationBlockType16-r11/timeInfo-r11/leapSeconds-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
SystemInformationBlockType16-r11/timeInfo-r11/localTimeOffset-r11 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_localTimeOffset_fmt)
#.FN_BODY SystemInformationBlockType16-r11/timeInfo-r11/timeInfoUTC-r11 VAL_PTR=&timeInfo
- guint64 timeInfo;
+ uint64_t timeInfo;
proto_tree *subtree;
nstime_t ts;
- guint32 old_offset = offset;
+ uint32_t old_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR SystemInformationBlockType16-r11/timeInfo-r11/timeInfoUTC-r11
@@ -1690,19 +1692,19 @@ WLAN-Identifiers-r12/bssid-r12 TYPE=FT_ETHER
WLAN-Identifiers-r12/hessid-r12 TYPE=FT_ETHER
#.TYPE_ATTR
-RRCConnectionReject-r8-IEs/waitTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionReject-r8-IEs/waitTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCConnectionReject-v1020-IEs/extendedWaitTime-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionReject-v1020-IEs/extendedWaitTime-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCConnectionRelease-v1020-IEs/extendedWaitTime-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionRelease-v1020-IEs/extendedWaitTime-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCConnectionRelease-v1540-IEs/waitTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionRelease-v1540-IEs/waitTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCEarlyDataComplete-r15-IEs/extendedWaitTime-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCEarlyDataComplete-r15-IEs/extendedWaitTime-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
SystemInformationBlockType1/cellSelectionInfo/q-RxLevMinOffset STRINGS=VALS(lte_rrc_q_RxLevMinOffset_vals)
@@ -1711,19 +1713,19 @@ SystemInformationBlockType1/cellSelectionInfo/q-RxLevMinOffset STRINGS=VALS(lte_
CellSelectionInfoCE1-v1360/delta-RxLevMinCE1-v1360 STRINGS=VALS(lte_rrc_delta_RxLevMin_vals)
#.TYPE_ATTR
-CellSelectionInfo-v920/q-QualMinOffset-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+CellSelectionInfo-v920/q-QualMinOffset-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
MobilityControlInfo/eag_4/schedulingInfoSIB1-BR-r14 TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_schedulingInfoSIB1_BR_r13_vals_ext
#.TYPE_ATTR
-TrafficPatternInfo-r14/timingOffset-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
+TrafficPatternInfo-r14/timingOffset-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_milliseconds)
#.FN_BODY TrafficPatternInfo-r14/messageSize-r14 VAL_PTR = &messageSize_r14_tvb HF_INDEX = -1
tvbuff_t *messageSize_r14_tvb = NULL;
%(DEFAULT_BODY)s
if (messageSize_r14_tvb) {
- guint bitvalue = tvb_get_bits8(messageSize_r14_tvb, 0, 6);
+ unsigned bitvalue = tvb_get_bits8(messageSize_r14_tvb, 0, 6);
actx->created_item = proto_tree_add_uint(tree, hf_index, messageSize_r14_tvb, 0, 1, bitvalue);
}
@@ -1734,7 +1736,7 @@ TrafficPatternInfo-r14/messageSize-r14 TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_S
RLF-Report-r9/eag_1/timeConnFailure-r10 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_timeConnFailure_r10_fmt)
#.TYPE_ATTR
-LogMeasInfo-r10/relativeTimeStamp-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+LogMeasInfo-r10/relativeTimeStamp-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.FN_BODY LogMeasInfo-r10/eag_9/uncomBarPreMeasResult-r17 VAL_PTR = &sensor_meas_info_tvb
tvbuff_t *sensor_meas_info_tvb = NULL;
@@ -1754,7 +1756,7 @@ LogMeasInfo-r10/relativeTimeStamp-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=
tvbuff_t *n_r12_tvb = NULL;
%(DEFAULT_BODY)s
if (n_r12_tvb) {
- guint bitvalue = tvb_get_bits8(n_r12_tvb, 0, 3);
+ unsigned bitvalue = tvb_get_bits8(n_r12_tvb, 0, 3);
actx->created_item = proto_tree_add_uint(tree, hf_index, n_r12_tvb, 0, 1, bitvalue);
}
@@ -1775,10 +1777,10 @@ BLER-Result-r12/blocksReceived-r12/m-r12 TYPE=FT_UINT8 DISPLAY=BASE_CUSTOM STRIN
BLER-Range-r12 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_BLER_Range_r12_vals_ext
#.TYPE_ATTR
-TimeSinceFailure-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+TimeSinceFailure-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-TimeUntilReconnection-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+TimeUntilReconnection-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.FIELD_ATTR
CarrierFreqUTRA-FDD/q-RxLevMin ABBREV=utra_q_RxLevMin
@@ -1805,22 +1807,22 @@ CarrierFreqUTRA-TDD-r12/q-RxLevMin-r12 ABBREV=utra_q_RxLevMin_r12
CarrierFreqUTRA-TDD-r12/q-RxLevMin-r12 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_utra_q_RxLevMin_vals_ext
#.TYPE_ATTR
-CarrierFreqUTRA-FDD/p-MaxUTRA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+CarrierFreqUTRA-FDD/p-MaxUTRA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-CarrierFreqUTRA-FDD-Ext-r12/p-MaxUTRA-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+CarrierFreqUTRA-FDD-Ext-r12/p-MaxUTRA-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-CarrierFreqUTRA-TDD/p-MaxUTRA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+CarrierFreqUTRA-TDD/p-MaxUTRA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-CarrierFreqUTRA-TDD-r12/p-MaxUTRA-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+CarrierFreqUTRA-TDD-r12/p-MaxUTRA-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-CarrierFreqUTRA-FDD/q-QualMin DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+CarrierFreqUTRA-FDD/q-QualMin DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-CarrierFreqUTRA-FDD-Ext-r12/q-QualMin-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+CarrierFreqUTRA-FDD-Ext-r12/q-QualMin-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.FIELD_ATTR
CarrierFreqsInfoGERAN/commonInfo/q-RxLevMin ABBREV=geran_q_RxLevMin
@@ -1829,7 +1831,7 @@ CarrierFreqsInfoGERAN/commonInfo/q-RxLevMin ABBREV=geran_q_RxLevMin
CarrierFreqsInfoGERAN/commonInfo/q-RxLevMin DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_geran_q_RxLevMin_vals_ext
#.TYPE_ATTR
-CarrierFreqsInfoGERAN/commonInfo/p-MaxGERAN DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+CarrierFreqsInfoGERAN/commonInfo/p-MaxGERAN DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
CQI-ReportConfig/nomPDSCH-RS-EPRE-Offset STRINGS=VALS(lte_rrc_nomPDSCH_RS_EPRE_Offset_vals)
@@ -1841,16 +1843,16 @@ CQI-ReportConfig-r10/nomPDSCH-RS-EPRE-Offset STRINGS=VALS(lte_rrc_nomPDSCH_RS_EP
CQI-ReportConfigSCell-r10/nomPDSCH-RS-EPRE-Offset-r10 STRINGS=VALS(lte_rrc_nomPDSCH_RS_EPRE_Offset_vals)
#.TYPE_ATTR
-P-C-AndCBSR-r11/p-C-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+P-C-AndCBSR-r11/p-C-r11 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-P-C-AndCBSR-r13/p-C-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+P-C-AndCBSR-r13/p-C-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-P-C-AndCBSR-r15 /p-C-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+P-C-AndCBSR-r15 /p-C-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-CSI-RS-Config-r10/csi-RS-r10/setup/p-C-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+CSI-RS-Config-r10/csi-RS-r10/setup/p-C-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.FN_BODY IP-Address-r13/ipv4-r13 VAL_PTR=&ipv4_tvb HF_INDEX=-1
tvbuff_t *ipv4_tvb = NULL;
@@ -1892,19 +1894,19 @@ IP-Address-r13/ipv6-r13 TYPE=FT_IPv6 DISPLAY=BASE_NONE
}
/* Clear out state */
- drx_config->configured = FALSE;
+ drx_config->configured = false;
}
#.FN_BODY MAC-MainConfig/eag_1/sr-ProhibitTimer-r9 VAL_PTR=&timer
- guint32 timer;
+ uint32_t timer;
%(DEFAULT_BODY)s
#.TYPE_ATTR
-MAC-MainConfig/eag_1/sr-ProhibitTimer-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_sr_periods
+MAC-MainConfig/eag_1/sr-ProhibitTimer-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_sr_periods)
#.TYPE_ATTR
-MAC-MainConfig/eag_9/shortTTI-AndSPT-r15/setup/ssr-ProhibitTimer-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_sr_periods
+MAC-MainConfig/eag_9/shortTTI-AndSPT-r15/setup/ssr-ProhibitTimer-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_sr_periods)
#.FN_BODY MAC-MainConfig/eag_2/mac-MainConfig-v1020/extendedBSR-Sizes-r10
mac_lte_info* p_mac_lte_info;
@@ -1914,95 +1916,95 @@ MAC-MainConfig/eag_9/shortTTI-AndSPT-r15/setup/ssr-ProhibitTimer-r15 DISPLAY=BAS
p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
if (p_mac_lte_info != NULL) {
/* Tell MAC to use extended BSR sizes configuration */
- set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, TRUE, actx->pinfo);
+ set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, true, actx->pinfo);
}
#.TYPE_ATTR
-PDSCH-ConfigCommon/referenceSignalPower DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+PDSCH-ConfigCommon/referenceSignalPower DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-P-Max DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+P-Max DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-P-MaxNR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+P-MaxNR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-SPS-ConfigUL/setup/p0-Persistent/p0-NominalPUSCH-Persistent DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+SPS-ConfigUL/setup/p0-Persistent/p0-NominalPUSCH-Persistent DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-SPS-ConfigUL/setup/p0-Persistent/p0-UE-PUSCH-Persistent DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+SPS-ConfigUL/setup/p0-Persistent/p0-UE-PUSCH-Persistent DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-SPS-ConfigUL/setup/eag_1/p0-PersistentSubframeSet2-r12/setup/p0-NominalPUSCH-PersistentSubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+SPS-ConfigUL/setup/eag_1/p0-PersistentSubframeSet2-r12/setup/p0-NominalPUSCH-PersistentSubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-SPS-ConfigUL/setup/eag_1/p0-PersistentSubframeSet2-r12/setup/p0-UE-PUSCH-PersistentSubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+SPS-ConfigUL/setup/eag_1/p0-PersistentSubframeSet2-r12/setup/p0-UE-PUSCH-PersistentSubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
UplinkPowerControlCommon/deltaPreambleMsg3 STRINGS=VALS(lte_rrc_deltaPreambleMsg3_vals)
#.TYPE_ATTR
-UplinkPowerControlCommon/p0-NominalPUSCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommon/p0-NominalPUSCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
UplinkPowerControlCommonSCell-v1130/deltaPreambleMsg3-r11 STRINGS=VALS(lte_rrc_deltaPreambleMsg3_vals)
#.TYPE_ATTR
-UplinkPowerControlCommon/p0-NominalPUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommon/p0-NominalPUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommon-v1610/p0-NominalSRS-Add-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommon-v1610/p0-NominalSRS-Add-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommonPSCell-r12/p0-NominalPUCCH-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommonPSCell-r12/p0-NominalPUCCH-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommonSCell-v1310/p0-NominalPUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommonSCell-v1310/p0-NominalPUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommonSCell-r10/p0-NominalPUSCH-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommonSCell-r10/p0-NominalPUSCH-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommonPUSCH-LessCell-v1430/p0-Nominal-PeriodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommonPUSCH-LessCell-v1430/p0-Nominal-PeriodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlCommonPUSCH-LessCell-v1430/p0-Nominal-AperiodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommonPUSCH-LessCell-v1430/p0-Nominal-AperiodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlDedicated/p0-UE-PUSCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicated/p0-UE-PUSCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlDedicated/p0-UE-PUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicated/p0-UE-PUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlDedicated-v1250/set2PowerControlParameter/setup/p0-NominalPUSCH-SubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlDedicated-v1250/set2PowerControlParameter/setup/p0-NominalPUSCH-SubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-UplinkPowerControlDedicated-v1250/set2PowerControlParameter/setup/p0-UE-PUSCH-SubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicated-v1250/set2PowerControlParameter/setup/p0-UE-PUSCH-SubframeSet2-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlDedicated-v1530/p0-UE-PUSCH-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicated-v1530/p0-UE-PUSCH-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPUSCH-LessPowerControlDedicated-v1430/p0-UE-PeriodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPUSCH-LessPowerControlDedicated-v1430/p0-UE-PeriodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPUSCH-LessPowerControlDedicated-v1430/p0-UE-AperiodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPUSCH-LessPowerControlDedicated-v1430/p0-UE-AperiodicSRS-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlAddSRS-r16/p0-UE-SRS-Add-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlAddSRS-r16/p0-UE-SRS-Add-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlDedicatedSCell-r10/p0-UE-PUSCH-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicatedSCell-r10/p0-UE-PUSCH-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-UplinkPowerControlDedicatedSCell-v1310/p0-UE-PUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicatedSCell-v1310/p0-UE-PUCCH DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
CellSelectionInfoNFreq-r13/q-RxLevMinOffset STRINGS=VALS(lte_rrc_q_RxLevMinOffset_vals)
#.TYPE_ATTR
-Q-QualMin-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+Q-QualMin-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
Q-RxLevMin DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_q_RxLevMin_vals_ext
@@ -2014,22 +2016,22 @@ CarrierFreqNR-r15/q-RxLevMin-r15 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_r
CarrierFreqNR-r15/q-RxLevMinSUL-r15 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_q_RxLevMin_vals_ext
#.TYPE_ATTR
-CarrierFreqNR-r15/q-QualMin-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+CarrierFreqNR-r15/q-QualMin-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-Q-OffsetRangeInterRAT DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+Q-OffsetRangeInterRAT DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
ReselectionThreshold DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_ReselectionThreshold_vals_ext
#.TYPE_ATTR
-ReselectionThresholdQ-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+ReselectionThresholdQ-r9 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-T-Reselection DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+T-Reselection DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-T-ReselectionEUTRA-CE-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+T-ReselectionEUTRA-CE-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
Hysteresis DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_Hysteresis_vals_ext
@@ -2143,10 +2145,10 @@ MeasResultWLAN-r13/availableAdmissionCapacityWLAN-r13 DISPLAY=BASE_CUSTOM STRING
MeasResultForECID-r9/ue-RxTxTimeDiffResult-r9 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_ue_RxTxTimeDiffResult_fmt)
#.TYPE_ATTR
-MeasResultForRSSI-r13/channelOccupancy-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+MeasResultForRSSI-r13/channelOccupancy-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_percent)
#.TYPE_ATTR
-MeasResultForRSSI-NR-r16/channelOccupancyNR-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+MeasResultForRSSI-NR-r16/channelOccupancyNR-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_percent)
#.TYPE_ATTR
UL-PDCP-DelayResult-r13/excessDelay-r13 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_excessDelay_r13_vals_ext
@@ -2164,32 +2166,174 @@ MeasResultSSTD-r13/subframeBoundaryOffsetResult-r13 DISPLAY=BASE_CUSTOM STRINGS=
#.TYPE_ATTR
SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
+#.FN_FTR DLDedicatedMessageSegment-r16-IEs
+ if (lte_rrc_reassemble_dcch_segments) {
+ uint32_t ueid, id, count;
+ rlc_lte_info *p_rlc_lte_info;
+ pdcp_lte_info *p_pdcp_lte_info;
+ mac_lte_info *p_mac_lte_info;
+ fragment_head *frag_data;
+ tvbuff_t *frag_tvb, *reassembled_tvb;
+ wmem_tree_key_t key[3];
+
+ if ((p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0)) != NULL) {
+ ueid = p_mac_lte_info->ueid;
+ } else if ((p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0)) != NULL) {
+ ueid = p_rlc_lte_info->ueid;
+ } else if ((p_pdcp_lte_info = (pdcp_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_pdcp_lte, 0)) != NULL) {
+ ueid = p_pdcp_lte_info->ueid;
+ } else {
+ ueid = 0;
+ }
+ key[0].length = 1;
+ key[0].key = &ueid;
+ key[1].length = 1;
+ key[1].key = &actx->pinfo->num;
+ key[2].length = 0;
+ key[2].key = NULL;
+ if (!PINFO_FD_VISITED(actx->pinfo)) {
+ void *value;
+
+ if (wmem_map_lookup_extended(lte_rrc_dcch_segment_ueid_count_hash, GUINT_TO_POINTER((ueid<<16)|(1<<15)), NULL, &value)) {
+ count = GPOINTER_TO_UINT(value);
+ } else {
+ count = 0;
+ }
+ if (private_data_get_dcch_segment_number(actx) == 0) {
+ /* new segmented message */
+ count++;
+ wmem_map_insert(lte_rrc_dcch_segment_ueid_count_hash, GUINT_TO_POINTER((ueid<<16)|(1<<15)), GUINT_TO_POINTER(count));
+ }
+ id = (ueid<<16)|(1<<15)|(count&0x7fff);
+ wmem_tree_insert32_array(lte_rrc_dcch_segment_id_tree, key, GUINT_TO_POINTER(id));
+ } else {
+ id = GPOINTER_TO_UINT(wmem_tree_lookup32_array(lte_rrc_dcch_segment_id_tree, key));
+ }
+ if ((frag_tvb = private_data_get_dcch_segment(actx)) != NULL) {
+ frag_data = fragment_add_seq_check(&lte_rrc_dcch_segment_reassembly_table, frag_tvb, 0, actx->pinfo,
+ id, NULL, private_data_get_dcch_segment_number(actx),
+ tvb_reported_length(frag_tvb),
+ !private_data_get_dcch_segment_last(actx));
+ reassembled_tvb = process_reassembled_data(frag_tvb, 0, actx->pinfo, "Reassembled DL Dedicated Message",
+ frag_data, &lte_rrc_dcch_segment_frag_items, NULL, tree);
+ if (reassembled_tvb) {
+ dissect_lte_rrc_DL_DCCH_Message_PDU(reassembled_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+ }
+
+#.FN_BODY DLDedicatedMessageSegment-r16-IEs/segmentNumber-r16 VAL_PTR=&value
+ uint32_t value;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment_number(actx, (uint8_t)value);
+
+#.FN_BODY DLDedicatedMessageSegment-r16-IEs/rrc-MessageSegmentContainer-r16 VAL_PTR=&segment
+ tvbuff_t *segment;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment(actx, segment);
+
+#.FN_BODY DLDedicatedMessageSegment-r16-IEs/rrc-MessageSegmentType-r16 VAL_PTR=&value
+ uint32_t value;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment_last(actx, (value > 0) ? true : false);
+
+#.FN_FTR ULDedicatedMessageSegment-r16-IEs
+ if (lte_rrc_reassemble_dcch_segments) {
+ uint32_t ueid, id, count;
+ rlc_lte_info *p_rlc_lte_info;
+ pdcp_lte_info *p_pdcp_lte_info;
+ mac_lte_info *p_mac_lte_info;
+ fragment_head *frag_data;
+ tvbuff_t *frag_tvb, *reassembled_tvb;
+ wmem_tree_key_t key[3];
+
+ if ((p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0)) != NULL) {
+ ueid = p_mac_lte_info->ueid;
+ } else if ((p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0)) != NULL) {
+ ueid = p_rlc_lte_info->ueid;
+ } else if ((p_pdcp_lte_info = (pdcp_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_pdcp_lte, 0)) != NULL) {
+ ueid = p_pdcp_lte_info->ueid;
+ } else {
+ ueid = 0;
+ }
+ key[0].length = 1;
+ key[0].key = &ueid;
+ key[1].length = 1;
+ key[1].key = &actx->pinfo->num;
+ key[2].length = 0;
+ key[2].key = NULL;
+ if (!PINFO_FD_VISITED(actx->pinfo)) {
+ void *value;
+
+ if (wmem_map_lookup_extended(lte_rrc_dcch_segment_ueid_count_hash, GUINT_TO_POINTER(ueid<<16), NULL, &value)) {
+ count = GPOINTER_TO_UINT(value);
+ } else {
+ count = 0;
+ }
+ if (private_data_get_dcch_segment_number(actx) == 0) {
+ /* new segmented message */
+ count++;
+ wmem_map_insert(lte_rrc_dcch_segment_ueid_count_hash, GUINT_TO_POINTER(ueid<<16), GUINT_TO_POINTER(count));
+ }
+ id = (ueid<<16)|(count&0x7fff);
+ wmem_tree_insert32_array(lte_rrc_dcch_segment_id_tree, key, GUINT_TO_POINTER(id));
+ } else {
+ id = GPOINTER_TO_UINT(wmem_tree_lookup32_array(lte_rrc_dcch_segment_id_tree, key));
+ }
+ if ((frag_tvb = private_data_get_dcch_segment(actx)) != NULL) {
+ frag_data = fragment_add_seq_check(&lte_rrc_dcch_segment_reassembly_table, frag_tvb, 0, actx->pinfo,
+ id, NULL, private_data_get_dcch_segment_number(actx),
+ tvb_reported_length(frag_tvb),
+ !private_data_get_dcch_segment_last(actx));
+ reassembled_tvb = process_reassembled_data(frag_tvb, 0, actx->pinfo, "Reassembled UL Dedicated Message",
+ frag_data, &lte_rrc_dcch_segment_frag_items, NULL, tree);
+ if (reassembled_tvb) {
+ dissect_lte_rrc_UL_DCCH_Message_PDU(reassembled_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+ }
+
+#.FN_BODY ULDedicatedMessageSegment-r16-IEs/segmentNumber-r16 VAL_PTR=&value
+ uint32_t value;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment_number(actx, (uint8_t)value);
+
+#.FN_BODY ULDedicatedMessageSegment-r16-IEs/rrc-MessageSegmentContainer-r16 VAL_PTR=&segment
+ tvbuff_t *segment;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment(actx, segment);
+
+#.FN_BODY ULDedicatedMessageSegment-r16-IEs/rrc-MessageSegmentType-r16 VAL_PTR=&value
+ uint32_t value;
+%(DEFAULT_BODY)s
+ private_data_set_dcch_segment_last(actx, (value > 0) ? true : false);
+
#.FN_HDR MasterInformationBlock
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock");
#.FN_HDR SystemInformation
- if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) {
+ if (private_data_get_bcch_dl_sch_msg(actx) == false) {
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation [");
}
#.FN_BODY SystemInformation
%(DEFAULT_BODY)s
- if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) {
+ if (private_data_get_bcch_dl_sch_msg(actx) == false) {
col_append_str(actx->pinfo->cinfo, COL_INFO, " ]");
}
#.FN_HDR SystemInformationBlockType1
- if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) {
+ if (private_data_get_bcch_dl_sch_msg(actx) == false) {
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1");
}
#.FN_HDR SystemInformation-BR-r13
- private_data_set_bcch_dl_sch_msg(actx, TRUE);
+ private_data_set_bcch_dl_sch_msg(actx, true);
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-BR-r13 [");
#.FN_BODY SystemInformation-BR-r13
@@ -2199,12 +2343,12 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
#.FN_HDR SystemInformationBlockType1-BR-r13
- private_data_set_bcch_dl_sch_msg(actx, TRUE);
+ private_data_set_bcch_dl_sch_msg(actx, true);
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1-BR-r13");
#.FN_HDR SystemInformation-MBMS-r14
- private_data_set_bcch_dl_sch_msg(actx, TRUE);
+ private_data_set_bcch_dl_sch_msg(actx, true);
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-MBMS-r14 [");
#.FN_BODY SystemInformation-MBMS-r14
@@ -2336,6 +2480,10 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB32");
+#.FN_HDR SystemInformationBlockType33-r18
+
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB33");
+
#.FN_HDR SystemInformationBlockPos-r15
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIBPos");
@@ -2430,19 +2578,48 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DLDedicatedMessageSegment-r16");
#.FN_HDR RRCConnectionReestablishmentRequest
-
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP. Only SRBs and UM (not AM) DRBs */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentRequest");
#.FN_HDR RRCConnectionRequest
-
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRequest");
#.FN_HDR RRCConnectionResumeRequest-r13
-
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ /* TODO: more complicated, skip PDCP reset for now */
+ // pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResumeRequest-r13");
#.FN_HDR RRCEarlyDataRequest-r15
-
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, false);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataRequest-r15");
#.FN_HDR CSFBParametersRequestCDMA2000
@@ -2598,7 +2775,7 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
#.FN_BODY Paging/pagingRecordList
/* Number of items is (last 3 bits of first byte and first bit of second) + 1 */
- guint16 number_of_records = ((tvb_get_ntohs(tvb, 0) >> 7) & 0x0f) + 1;
+ uint16_t number_of_records = ((tvb_get_ntohs(tvb, 0) >> 7) & 0x0f) + 1;
%(DEFAULT_BODY)s
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%u PagingRecord%%s)", number_of_records, plurality(number_of_records, "", "s"));
@@ -2609,14 +2786,14 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
#.FN_BODY MasterInformationBlock/systemFrameNumber VAL_PTR=&value_tvb
tvbuff_t *value_tvb = NULL;
- guint32 sfn;
+ uint32_t sfn;
%(DEFAULT_BODY)s
/* Show SFN in info column */
- sfn = tvb_get_guint8(value_tvb, 0);
+ sfn = tvb_get_uint8(value_tvb, 0);
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (SFN=%%u)", sfn);
#.FN_BODY SystemInformationBlockType1/systemInfoValueTag VAL_PTR=&value
- guint32 value;
+ uint32_t value;
%(DEFAULT_BODY)s
/* Track whether systemInfoValue has changed since last seen, indicating new SI config
TODO: add link back to previous config and (if known) time since previous config
@@ -2627,15 +2804,15 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
wmem_map_insert(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num),
GUINT_TO_POINTER(system_info_value_current+1));
}
- system_info_value_current_set = TRUE;
+ system_info_value_current_set = true;
system_info_value_current = value;
}
else {
/* Look up indication of changed info value from hash table */
- gpointer p_previous = wmem_map_lookup(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num));
+ void *p_previous = wmem_map_lookup(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num));
if (p_previous != NULL) {
/* Subtract one from stored result to get previous value */
- guint32 previous = GPOINTER_TO_UINT(p_previous) - 1;
+ uint32_t previous = GPOINTER_TO_UINT(p_previous) - 1;
expert_add_info_format(actx->pinfo, actx->created_item, &ei_lte_rrc_si_info_value_changed,
"SI Info Value changed (now %%u, was %%u)", value, previous);
}
@@ -2703,29 +2880,29 @@ SL-V2X-ConfigCommon-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rr
#.FN_BODY DRB-Identity VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
- mapping->drbid = (guint8)value;
+ mapping->drbid = (uint8_t)value;
}
#.FN_BODY RLC-Config VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->rlcMode = (value==0) ? RLC_AM_MODE : RLC_UM_MODE;
- mapping->rlcMode_present = TRUE;
+ mapping->rlcMode_present = true;
if (mapping->rlcMode == RLC_AM_MODE) {
mapping->pdcp_sn_size = 12;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
}
#.FN_BODY RLC-Config-v1250/ul-extended-RLC-LI-Field-r12 VAL_PTR=&ext_li_field
- gboolean ext_li_field;
+ bool ext_li_field;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
@@ -2733,7 +2910,7 @@ SL-V2X-ConfigCommon-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rr
}
#.FN_BODY RLC-Config-v1250/dl-extended-RLC-LI-Field-r12 VAL_PTR=&ext_li_field
- gboolean ext_li_field;
+ bool ext_li_field;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
@@ -2741,7 +2918,7 @@ SL-V2X-ConfigCommon-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rr
}
#.FN_BODY RLC-Config-v1310/ul-extended-RLC-AM-SN-r13 VAL_PTR=&ext_am_sn
- gboolean ext_am_sn;
+ bool ext_am_sn;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
@@ -2749,7 +2926,7 @@ SL-V2X-ConfigCommon-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rr
}
#.FN_BODY RLC-Config-v1310/dl-extended-RLC-AM-SN-r13 VAL_PTR=&ext_am_sn
- gboolean ext_am_sn;
+ bool ext_am_sn;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
@@ -2757,51 +2934,51 @@ SL-V2X-ConfigCommon-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rr
}
#.FN_BODY DRB-ToAddMod/logicalChannelIdentity VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
- mapping->lcid = (guint8)value;
- mapping->lcid_present = TRUE;
+ mapping->lcid = (uint8_t)value;
+ mapping->lcid_present = true;
}
#.FN_BODY DRB-ToAddMod/eag_5/logicalChannelIdentity-r15 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
- mapping->lcid = (guint8)value;
- mapping->lcid_present = TRUE;
+ mapping->lcid = (uint8_t)value;
+ mapping->lcid_present = true;
}
#.FN_BODY SN-FieldLength VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->um_sn_length = (value==0) ? 5 : 10;
- mapping->um_sn_length_present = TRUE;
+ mapping->um_sn_length_present = true;
}
#.FN_BODY LogicalChannelConfig/ul-SpecificParameters/priority VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->ul_priority = value;
- mapping->ul_priority_present = TRUE;
+ mapping->ul_priority_present = true;
}
#.TYPE_ATTR
LWA-Config-r13/eag_1/wt-MAC-Address-r14 TYPE=FT_ETHER
#.FN_BODY PDCP-Config/rlc-UM/pdcp-SN-Size VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->pdcp_sn_size = (value==0) ? 7 : 12;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY PDCP-Config/eag_2/pdcp-SN-Size-v1130
@@ -2809,7 +2986,7 @@ LWA-Config-r13/eag_1/wt-MAC-Address-r14 TYPE=FT_ETHER
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->pdcp_sn_size = 15;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY PDCP-Config/eag_4/pdcp-SN-Size-v1310
@@ -2817,14 +2994,14 @@ LWA-Config-r13/eag_1/wt-MAC-Address-r14 TYPE=FT_ETHER
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->pdcp_sn_size = 18;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.TYPE_ATTR
-LBT-Config-r14/maxEnergyDetectionThreshold-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+LBT-Config-r14/maxEnergyDetectionThreshold-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-LBT-Config-r14/energyDetectionThresholdOffset-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+LBT-Config-r14/energyDetectionThresholdOffset-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.FN_BODY NeighCellsInfo-r12/transmissionModeList-r12 VAL_PTR=&tm_list_tvb
tvbuff_t *tm_list_tvb=NULL;
@@ -2850,7 +3027,7 @@ LBT-Config-r14/energyDetectionThresholdOffset-r14 DISPLAY=BASE_DEC|BASE_UNIT_STR
p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
if (p_mac_lte_info != NULL) {
/* Tell MAC to use simultaneous PUCCH/PUSCH configuration */
- set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, private_data_get_simult_pucch_pusch_cell_type(actx), TRUE, actx->pinfo);
+ set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, private_data_get_simult_pucch_pusch_cell_type(actx), true, actx->pinfo);
}
#.TYPE_RENAME
@@ -2862,13 +3039,13 @@ PUCCH-ConfigDedicated-r13/pucch-Format-r13/channelSelection-r13/n1PUCCH-AN-CS-r1
private_data_set_ra_preambles(actx, 0);
#.FN_BODY RACH-ConfigCommon/preambleInfo/numberOfRA-Preambles VAL_PTR=&value
- guint value;
+ unsigned value;
%(DEFAULT_BODY)s
/* This is mandatory, store value */
private_data_set_ra_preambles(actx, value);
#.FN_BODY RACH-ConfigCommon/preambleInfo/preamblesGroupAConfig/sizeOfRA-PreamblesGroupA VAL_PTR=&value
- guint ra_value, value;
+ unsigned ra_value, value;
%(DEFAULT_BODY)s
/* Retrived stored value for RA (both Group A & Group B) */
ra_value = private_data_get_ra_preambles(actx);
@@ -2886,172 +3063,172 @@ PUCCH-ConfigDedicated-r13/pucch-Format-r13/channelSelection-r13/n1PUCCH-AN-CS-r1
private_data_set_ra_preambles(actx, 0);
#.TYPE_ATTR
-RACH-ConfigCommon-v1250/txFailParams-r12/connEstFailOffset-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+RACH-ConfigCommon-v1250/txFailParams-r12/connEstFailOffset-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.FN_BODY DRX-Config/setup/onDurationTimer VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
/* Set 'configured' state so that config can be examine once complete! */
- config->configured = TRUE;
+ config->configured = true;
config->onDurationTimer = drx_lookup_onDurationTimer(value);
#.FN_BODY DRX-Config/setup/drx-InactivityTimer VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->inactivityTimer = drx_lookup_inactivityTimer(value);
#.FN_BODY DRX-Config/setup/drx-RetransmissionTimer VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->retransmissionTimer = drx_lookup_retransmissionTimer(value);
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->longCycle = drx_lookup_longCycle(value);
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf10 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf20 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf32 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf40 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf64 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf80 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf128 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf160 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf256 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf320 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf512 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf640 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf1024 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf1280 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf2048 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/longDRX-CycleStartOffset/sf2560 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config/setup/shortDRX/shortDRX-Cycle VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
- config->shortCycleConfigured = TRUE;
+ config->shortCycleConfigured = true;
config->shortCycle = drx_lookup_shortCycle(value);
#.FN_BODY DRX-Config/setup/shortDRX/drxShortCycleTimer VAL_PTR=&timer
- guint32 timer;
+ uint32_t timer;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->shortCycleTimer = timer;
#.TYPE_ATTR
-DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_short_drx_cycles
+DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_short_drx_cycles)
#.FN_BODY DRX-Config-v1130/drx-RetransmissionTimer-v1130 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->retransmissionTimer = 0;
#.FN_BODY DRX-Config-v1130/longDRX-CycleStartOffset-v1130 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->longCycle = drx_lookup_longCycle_v1130(value);
#.FN_BODY DRX-Config-v1130/longDRX-CycleStartOffset-v1130/sf60-v1130 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config-v1130/longDRX-CycleStartOffset-v1130/sf70-v1130 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
#.FN_BODY DRX-Config-v1130/shortDRX-Cycle-v1130 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
/* Presumably config->shortCycleConfigured will be set... */
@@ -3063,7 +3240,7 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
config->longCycle = 60;
#.FN_BODY DRX-Config-v1310/longDRX-CycleStartOffset-v1310/sf60-v1310 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drx_config_t* config = private_data_get_drx_config(actx);
%(DEFAULT_BODY)s
config->cycleOffset = value;
@@ -3087,10 +3264,10 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
/* as the UE could have locally dropped the previous RRC Connection */
set_mac_lte_drx_config_release(p_mac_lte_info->ueid, actx->pinfo);
/* Also tell MAC to release extended BSR sizes configuration */
- set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, FALSE, actx->pinfo);
+ set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, false, actx->pinfo);
/* Also tell MAC to release simutaneous PUCCH/PUSCH configuration */
- set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PCELL, FALSE, actx->pinfo);
- set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PSCELL, FALSE, actx->pinfo);
+ set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PCELL, false, actx->pinfo);
+ set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PSCELL, false, actx->pinfo);
/* TODO: also release PDCP security config here */
}
%(DEFAULT_BODY)s
@@ -3114,25 +3291,25 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
}
#.FN_BODY CipheringAlgorithm-r12 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
pdcp_lte_security_info_t *p_security_algorithms;
%(DEFAULT_BODY)s
p_security_algorithms = private_data_pdcp_security_algorithms(actx);
p_security_algorithms->ciphering = (enum lte_security_ciphering_algorithm_e)value;
#.FN_BODY SecurityAlgorithmConfig/integrityProtAlgorithm VAL_PTR=&value
- guint32 value;
+ uint32_t value;
pdcp_lte_security_info_t *p_security_algorithms;
%(DEFAULT_BODY)s
p_security_algorithms = private_data_pdcp_security_algorithms(actx);
p_security_algorithms->integrity = (enum lte_security_integrity_algorithm_e)value;
#.FN_BODY SchedulingRequestConfig/setup/sr-ConfigIndex VAL_PTR=&value
- guint32 value;
- guint16 periodicity, subframe_offset;
+ uint32_t value;
+ uint16_t periodicity, subframe_offset;
proto_item *ti;
proto_tree *subtree;
- gint index_offset = offset;
+ int index_offset = offset;
%(DEFAULT_BODY)s
/* Break config index into its parts */
sr_lookup_configindex(value, &periodicity, &subframe_offset);
@@ -3144,11 +3321,11 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
proto_item_set_generated(ti);
#.FN_BODY SchedulingRequestConfigSCell-r13/setup/sr-ConfigIndex-r13 VAL_PTR=&value
- guint32 value;
- guint16 periodicity, subframe_offset;
+ uint32_t value;
+ uint16_t periodicity, subframe_offset;
proto_item *ti;
proto_tree *subtree;
- gint index_offset = offset;
+ int index_offset = offset;
%(DEFAULT_BODY)s
/* Break config index into its parts */
sr_lookup_configindex(value, &periodicity, &subframe_offset);
@@ -3160,7 +3337,7 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
proto_item_set_generated(ti);
#.FN_BODY FreqBandIndicator VAL_PTR=&value
- guint32 value;
+ uint32_t value;
%(DEFAULT_BODY)s
set_freq_band_indicator(value, actx);
@@ -3173,8 +3350,8 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
%(DEFAULT_BODY)s
mappings = private_data_meas_capabilities_item_band_mappings(actx);
if (mappings->number_of_interfreq_serving_read < mappings->number_of_bands_set) {
- guint16 serving_band = mappings->band_by_item[mappings->number_of_interfreq_serving_read];
- guint16 target_band = mappings->band_by_item[mappings->number_of_interfreq_target_read++];
+ uint16_t serving_band = mappings->band_by_item[mappings->number_of_interfreq_serving_read];
+ uint16_t target_band = mappings->band_by_item[mappings->number_of_interfreq_target_read++];
if (mappings->number_of_interfreq_target_read == mappings->number_of_bands_set) {
mappings->number_of_interfreq_target_read = 0;
mappings->number_of_interfreq_serving_read++;
@@ -3194,16 +3371,16 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
mappings->number_of_bands_set = 0;
#.FN_BODY ReleaseCause VAL_PTR=&value
- guint32 value;
+ uint32_t value;
%(DEFAULT_BODY)s
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%%s]",
- val_to_str(value, lte_rrc_ReleaseCause_vals, "Unknown"));
+ val_to_str_const(value, lte_rrc_ReleaseCause_vals, "Unknown"));
#.TYPE_ATTR
LWA-Parameters-r13/wlan-MAC-Address-r13 TYPE=FT_ETHER
#.TYPE_ATTR
-VisitedCellInfo-r12/timeSpent-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+VisitedCellInfo-r12/timeSpent-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.FN_BODY WLAN-OffloadConfig-r12/thresholdChannelUtilization-r12/thresholdChannelUtilizationLow-r12
%(DEFAULT_BODY)s
@@ -3259,19 +3436,19 @@ SL-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_SL_CBR_r14_fmt)
SL-CommResourcePoolV2X-r14/threshS-RSSI-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_threshS_RSSI_CBR_r14_fmt)
#.TYPE_ATTR
-SL-DiscResourcePool-r12/eag_1/txParamsAddNeighFreq-r13/setup/referenceSignalPower DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+SL-DiscResourcePool-r12/eag_1/txParamsAddNeighFreq-r13/setup/referenceSignalPower DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
SL-DiscSysInfoReport-r13/cellSelectionInfo-r13/q-RxLevMinOffset-r13 STRINGS=VALS(lte_rrc_q_RxLevMinOffset_vals)
#.TYPE_ATTR
-SL-DiscSysInfoReport-r13/referenceSignalPower-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+SL-DiscSysInfoReport-r13/referenceSignalPower-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
SL-V2X-InterFreqUE-Config-r14/offsetDFN-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_offsetDFN_r14_fmt)
#.TYPE_ATTR
-P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.FN_BODY RRCConnectionReconfiguration-v1510-IEs/nr-Config-r15/setup/nr-SecondaryCellGroupConfig-r15 VAL_PTR = &rrc_reconfiguration_tvb
tvbuff_t *rrc_reconfiguration_tvb = NULL;
@@ -3658,6 +3835,27 @@ P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib1-10-v1700
private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_1_10);
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-17a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_17a);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-18a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_18a);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-20a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_20a);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib1-11-v1800
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_1_11);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib1-12-v1800
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_1_12);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-26-v1800
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_26);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-27-v1800
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_27);
+
#.FN_BODY SystemInformationBlockPos-r15/assistanceDataSIB-Element-r15 VAL_PTR = &assist_data_sib_elem_tvb
tvbuff_t *assist_data_sib_elem_tvb = NULL;
@@ -3685,7 +3883,7 @@ P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
}
#.TYPE_ATTR
-TimeOffsetUTC-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+TimeOffsetUTC-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.FN_BODY OverheatingAssistance-v1610/overheatingAssistanceForSCG-r16 VAL_PTR = &overheating_assist_for_scg_tvb
tvbuff_t *overheating_assist_for_scg_tvb = NULL;
@@ -3711,6 +3909,20 @@ TimeOffsetUTC-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
dissect_nr_rrc_CondReconfigExecCondSCG_r17_PDU(cond_reconfig_exec_cond_scg_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY ReferenceLocation-r18 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL);
+ }
+
+#.FN_BODY RACH-ReportNR-r18 VAL_PTR = &ra_reportlist_tvb
+ tvbuff_t *ra_reportlist_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ra_reportlist_tvb) {
+ dissect_nr_rrc_RA_ReportList_r16_PDU(ra_reportlist_tvb, actx->pinfo, tree, NULL);
+ }
+
#
# EUTRA-Sidelink-Preconf
#
@@ -3809,15 +4021,48 @@ SL-V2X-PreconfigCommPool-r14/threshS-RSSI-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationRequest-NB-r16");
#.FN_HDR RRCConnectionReestablishmentRequest-NB
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP. Only SRBs and UM (not AM) DRBs */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentRequest-NB");
#.FN_HDR RRCConnectionRequest-NB
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRequest-NB");
#.FN_HDR RRCConnectionResumeRequest-NB
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ /* TODO: more complicated, skip PDCP reset for now */
+ // pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, true);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResumeRequest-NB");
#.FN_HDR RRCEarlyDataRequest-NB-r15
+ /* Inform RLC & PDCP - need UE identifier */
+ mac_lte_info *p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0);
+ if (p_mac_lte_info) {
+ /* Tell RLC this UE is trying to (re)connect */
+ rlc_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid);
+ /* And PDCP */
+ pdcp_lte_reset_ue_bearers(actx->pinfo, p_mac_lte_info->ueid, false);
+ }
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataRequest-NB-r15");
#.FN_HDR SCPTMConfiguration-NB-r14
@@ -3868,6 +4113,9 @@ SL-V2X-PreconfigCommPool-r14/threshS-RSSI-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF
#.FN_HDR SystemInformationBlockType32-NB-r17
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB32");
+#.FN_HDR SystemInformationBlockType33-NB-r18
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB33");
+
#.TYPE_ATTR
MasterInformationBlock-NB/schedulingInfoSIB1-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_schedulingInfoSIB1_NB_r13_vals_ext
@@ -3875,16 +4123,16 @@ MasterInformationBlock-NB/schedulingInfoSIB1-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
MasterInformationBlock-TDD-NB-r15/schedulingInfoSIB1-r15 TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_schedulingInfoSIB1_NB_r13_vals_ext
#.TYPE_ATTR
-RRCConnectionReject-NB-r13-IEs/extendedWaitTime-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionReject-NB-r13-IEs/extendedWaitTime-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCConnectionRelease-NB-r13-IEs/extendedWaitTime-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionRelease-NB-r13-IEs/extendedWaitTime-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCConnectionRelease-NB-v1430-IEs/extendedWaitTime-CPdata-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCConnectionRelease-NB-v1430-IEs/extendedWaitTime-CPdata-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
-RRCEarlyDataComplete-NB-r15-IEs/extendedWaitTime-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+RRCEarlyDataComplete-NB-r15-IEs/extendedWaitTime-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_seconds)
#.TYPE_ATTR
CellSelectionInfo-NB-v1350/delta-RxLevMin-v1350 STRINGS=VALS(lte_rrc_delta_RxLevMin_vals)
@@ -3905,16 +4153,16 @@ InterFreqCarrierFreqInfo-NB-r13/eag_1/delta-RxLevMin-v1350 STRINGS=VALS(lte_rrc_
AB-Config-NB-r13/ab-Category-r13 STRINGS=VALS(lte_rrc_eab_category_vals)
#.TYPE_ATTR
-NPDSCH-ConfigCommon-NB-r13/nrs-Power-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+NPDSCH-ConfigCommon-NB-r13/nrs-Power-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
-RACH-ConfigCommon-NB-r13/connEstFailOffset-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+RACH-ConfigCommon-NB-r13/connEstFailOffset-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
-SR-WithoutHARQ-ACK-Config-NB-r15/setup/sr-ProhibitTimer-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_sr_periods
+SR-WithoutHARQ-ACK-Config-NB-r15/setup/sr-ProhibitTimer-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_sr_periods)
#.TYPE_ATTR
-SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.FN_BODY DRB-ToAddMod-NB-r13
struct mac_lte_info *p_mac_lte_info;
@@ -3957,9 +4205,9 @@ SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->rlcMode = RLC_AM_MODE;
- mapping->rlcMode_present = TRUE;
+ mapping->rlcMode_present = true;
mapping->pdcp_sn_size = 7;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY RLC-Config-NB-r13/um-Bi-Directional-r15
@@ -3967,11 +4215,11 @@ SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->rlcMode = RLC_UM_MODE;
- mapping->rlcMode_present = TRUE;
+ mapping->rlcMode_present = true;
mapping->um_sn_length = 5;
- mapping->um_sn_length_present = TRUE;
+ mapping->um_sn_length_present = true;
mapping->pdcp_sn_size = 7;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY RLC-Config-NB-r13/um-Uni-Directional-UL-r15
@@ -3979,11 +4227,11 @@ SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->rlcMode = RLC_UM_MODE;
- mapping->rlcMode_present = TRUE;
+ mapping->rlcMode_present = true;
mapping->um_sn_length = 5;
- mapping->um_sn_length_present = TRUE;
+ mapping->um_sn_length_present = true;
mapping->pdcp_sn_size = 7;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY RLC-Config-NB-r13/um-Uni-Directional-DL-r15
@@ -3991,39 +4239,39 @@ SR-NPRACH-Resource-NB-r15/p0-SR-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->rlcMode = RLC_UM_MODE;
- mapping->rlcMode_present = TRUE;
+ mapping->rlcMode_present = true;
mapping->um_sn_length = 5;
- mapping->um_sn_length_present = TRUE;
+ mapping->um_sn_length_present = true;
mapping->pdcp_sn_size = 7;
- mapping->pdcp_sn_size_present = TRUE;
+ mapping->pdcp_sn_size_present = true;
}
#.FN_BODY DRB-ToAddMod-NB-r13/logicalChannelIdentity-r13 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
- mapping->lcid = (guint8)value;
- mapping->lcid_present = TRUE;
+ mapping->lcid = (uint8_t)value;
+ mapping->lcid_present = true;
}
#.FN_BODY LogicalChannelConfig-NB-r13/priority-r13 VAL_PTR=&value
- guint32 value;
+ uint32_t value;
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
%(DEFAULT_BODY)s
if (mapping != NULL) {
mapping->ul_priority = value;
- mapping->ul_priority_present = TRUE;
+ mapping->ul_priority_present = true;
}
#.TYPE_ATTR
-UplinkPowerControlCommon-NB-r13/p0-NominalNPUSCH-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+UplinkPowerControlCommon-NB-r13/p0-NominalNPUSCH-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_dbm)
#.TYPE_ATTR
UplinkPowerControlCommon-NB-r13/deltaPreambleMsg3-r13 STRINGS=VALS(lte_rrc_deltaPreambleMsg3_vals)
#.TYPE_ATTR
-UplinkPowerControlDedicated-NB-r13/p0-UE-NPUSCH-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+UplinkPowerControlDedicated-NB-r13/p0-UE-NPUSCH-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
#.TYPE_ATTR
ReselectionThreshold-NB-v1360 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_ReselectionThreshold_NB_vals_ext
@@ -4035,4 +4283,4 @@ NRSRP-Range-NB-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_NRSRP_Range_NB_r1
NRSRQ-Range-NB-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_NRSRQ_Range_NB_r14_fmt)
#.TYPE_ATTR
-PUR-Config-NB-r16/pur-PhysicalConfig-r16/p0-UE-NPUSCH-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_decibels
+PUR-Config-NB-r16/pur-PhysicalConfig-r16/p0-UE-NPUSCH-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=UNS(&units_decibels)
diff --git a/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c b/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
index 72d8992e..a391b9cf 100644
--- a/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
+++ b/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
@@ -1,9 +1,9 @@
/* packet-lte-rrc-template.c
* Routines for Evolved Universal Terrestrial Radio Access (E-UTRA);
* Radio Resource Control (RRC) protocol specification
- * (3GPP TS 36.331 V17.5.0 Release 17) packet dissection
+ * (3GPP TS 36.331 V18.2.0 Release 18) packet dissection
* Copyright 2008, Vincent Helfre
- * Copyright 2009-2023, Pascal Quantin
+ * Copyright 2009-2024, Pascal Quantin
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -25,9 +25,12 @@
#include <epan/exceptions.h>
#include <epan/show_exception.h>
#include <epan/proto_data.h>
+#include <epan/tfs.h>
+#include <epan/unit_strings.h>
#include <wsutil/str_util.h>
#include <wsutil/epochs.h>
+#include <wsutil/array.h>
#include "packet-per.h"
#include "packet-rrc.h"
@@ -48,24 +51,28 @@
void proto_register_lte_rrc(void);
void proto_reg_handoff_lte_rrc(void);
-static dissector_handle_t nas_eps_handle = NULL;
-static dissector_handle_t nas_5gs_handle = NULL;
-static dissector_handle_t rrc_irat_ho_to_utran_cmd_handle = NULL;
-static dissector_handle_t rrc_sys_info_cont_handle = NULL;
-static dissector_handle_t gsm_a_dtap_handle = NULL;
-static dissector_handle_t gsm_rlcmac_dl_handle = NULL;
-static dissector_handle_t nr_rrc_reconf_handle = NULL;
+static dissector_handle_t nas_eps_handle;
+static dissector_handle_t nas_5gs_handle;
+static dissector_handle_t rrc_irat_ho_to_utran_cmd_handle;
+static dissector_handle_t rrc_sys_info_cont_handle;
+static dissector_handle_t gsm_a_dtap_handle;
+static dissector_handle_t gsm_rlcmac_dl_handle;
+static dissector_handle_t nr_rrc_reconf_handle;
static dissector_handle_t lte_rrc_conn_reconf_handle;
static dissector_handle_t lte_rrc_dl_ccch_handle;
-static wmem_map_t *lte_rrc_etws_cmas_dcs_hash = NULL;
+static wmem_map_t *lte_rrc_etws_cmas_dcs_hash;
/* Keep track of where/how the System Info value has changed */
-static wmem_map_t *lte_rrc_system_info_value_changed_hash = NULL;
-static guint8 system_info_value_current;
-static gboolean system_info_value_current_set;
+static wmem_map_t *lte_rrc_system_info_value_changed_hash;
+static uint8_t system_info_value_current;
+static bool system_info_value_current_set;
-static gboolean lte_rrc_nas_in_root_tree;
+static wmem_map_t *lte_rrc_dcch_segment_ueid_count_hash;
+static wmem_tree_t *lte_rrc_dcch_segment_id_tree;
+
+static bool lte_rrc_nas_in_root_tree;
+static bool lte_rrc_reassemble_dcch_segments;
extern int proto_mac_lte;
extern int proto_rlc_lte;
@@ -76,275 +83,289 @@ extern int proto_pdcp_lte;
#include "packet-lte-rrc-val.h"
/* Initialize the protocol and registered fields */
-static int proto_lte_rrc = -1;
+static int proto_lte_rrc;
#include "packet-lte-rrc-hf.c"
-static int hf_lte_rrc_eutra_cap_feat_group_ind_1 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_2 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_3 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_4 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_5 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_6 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_7 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_8 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_9 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_10 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_11 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_12 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_13 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_14 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_15 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_16 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_17 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_18 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_19 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_20 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_21 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_22 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_23 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_24 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_25 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_26 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_27 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_28 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_29 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_30 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_31 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_32 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_33 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_34 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_35 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_36 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_37 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_38 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_39 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_40 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_41 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_42 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_43 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_44 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_45 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_46 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_47 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_48 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_49 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_50 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_51 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_52 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_53 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_54 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_55 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_56 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_57 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_58 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_59 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_60 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_61 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_62 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_63 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_64 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_101 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_102 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_103 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_104 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_105 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_106 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_107 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_108 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_109 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_110 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_111 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_112 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_113 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_114 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_115 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_116 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_117 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_118 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_119 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_120 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_121 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_122 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_123 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_124 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_125 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_126 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_127 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_128 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_129 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_130 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_131 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_132 = -1;
-static int hf_lte_rrc_serialNumber_gs = -1;
-static int hf_lte_rrc_serialNumber_msg_code = -1;
-static int hf_lte_rrc_serialNumber_upd_nb = -1;
-static int hf_lte_rrc_warningType_value = -1;
-static int hf_lte_rrc_warningType_emergency_user_alert = -1;
-static int hf_lte_rrc_warningType_popup = -1;
-static int hf_lte_rrc_warningMessageSegment_nb_pages = -1;
-static int hf_lte_rrc_warningMessageSegment_decoded_page = -1;
-static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1 = -1;
-static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2 = -1;
-static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1 = -1;
-static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2 = -1;
-static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1 = -1;
-static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2 = -1;
-static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit1 = -1;
-static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit2 = -1;
-static int hf_lte_rrc_sr_config_periodicity = -1;
-static int hf_lte_rrc_sr_config_subframe_offset = -1;
-static int hf_lte_rrc_cdma_time = -1;
-static int hf_lte_rrc_utc_time = -1;
-static int hf_lte_rrc_local_time = -1;
-static int hf_lte_rrc_absolute_time = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm1 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm2 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm3 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm4 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm6 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm8 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm9 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm10 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31 = -1;
-static int hf_lte_rrc_sib11_fragments = -1;
-static int hf_lte_rrc_sib11_fragment = -1;
-static int hf_lte_rrc_sib11_fragment_overlap = -1;
-static int hf_lte_rrc_sib11_fragment_overlap_conflict = -1;
-static int hf_lte_rrc_sib11_fragment_multiple_tails = -1;
-static int hf_lte_rrc_sib11_fragment_too_long_fragment = -1;
-static int hf_lte_rrc_sib11_fragment_error = -1;
-static int hf_lte_rrc_sib11_fragment_count = -1;
-static int hf_lte_rrc_sib11_reassembled_in = -1;
-static int hf_lte_rrc_sib11_reassembled_length = -1;
-static int hf_lte_rrc_sib11_reassembled_data = -1;
-static int hf_lte_rrc_sib12_fragments = -1;
-static int hf_lte_rrc_sib12_fragment = -1;
-static int hf_lte_rrc_sib12_fragment_overlap = -1;
-static int hf_lte_rrc_sib12_fragment_overlap_conflict = -1;
-static int hf_lte_rrc_sib12_fragment_multiple_tails = -1;
-static int hf_lte_rrc_sib12_fragment_too_long_fragment = -1;
-static int hf_lte_rrc_sib12_fragment_error = -1;
-static int hf_lte_rrc_sib12_fragment_count = -1;
-static int hf_lte_rrc_sib12_reassembled_in = -1;
-static int hf_lte_rrc_sib12_reassembled_length = -1;
-static int hf_lte_rrc_sib12_reassembled_data = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit1 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit2 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit3 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit4 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit5 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit6 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit7 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit8 = -1;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_1;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_2;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_3;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_4;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_5;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_6;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_7;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_8;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_9;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_10;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_11;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_12;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_13;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_14;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_15;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_16;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_17;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_18;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_19;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_20;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_21;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_22;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_23;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_24;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_25;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_26;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_27;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_28;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_29;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_30;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_31;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_32;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_33;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_34;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_35;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_36;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_37;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_38;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_39;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_40;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_41;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_42;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_43;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_44;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_45;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_46;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_47;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_48;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_49;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_50;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_51;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_52;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_53;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_54;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_55;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_56;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_57;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_58;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_59;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_60;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_61;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_62;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_63;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_64;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_101;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_102;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_103;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_104;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_105;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_106;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_107;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_108;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_109;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_110;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_111;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_112;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_113;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_114;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_115;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_116;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_117;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_118;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_119;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_120;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_121;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_122;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_123;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_124;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_125;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_126;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_127;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_128;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_129;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_130;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_131;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_132;
+static int hf_lte_rrc_serialNumber_gs;
+static int hf_lte_rrc_serialNumber_msg_code;
+static int hf_lte_rrc_serialNumber_upd_nb;
+static int hf_lte_rrc_warningType_value;
+static int hf_lte_rrc_warningType_emergency_user_alert;
+static int hf_lte_rrc_warningType_popup;
+static int hf_lte_rrc_warningMessageSegment_nb_pages;
+static int hf_lte_rrc_warningMessageSegment_decoded_page;
+static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1;
+static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2;
+static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1;
+static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2;
+static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1;
+static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2;
+static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit1;
+static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit2;
+static int hf_lte_rrc_sr_config_periodicity;
+static int hf_lte_rrc_sr_config_subframe_offset;
+static int hf_lte_rrc_cdma_time;
+static int hf_lte_rrc_utc_time;
+static int hf_lte_rrc_local_time;
+static int hf_lte_rrc_absolute_time;
+static int hf_lte_rrc_transmissionModeList_r12_tm1;
+static int hf_lte_rrc_transmissionModeList_r12_tm2;
+static int hf_lte_rrc_transmissionModeList_r12_tm3;
+static int hf_lte_rrc_transmissionModeList_r12_tm4;
+static int hf_lte_rrc_transmissionModeList_r12_tm6;
+static int hf_lte_rrc_transmissionModeList_r12_tm8;
+static int hf_lte_rrc_transmissionModeList_r12_tm9;
+static int hf_lte_rrc_transmissionModeList_r12_tm10;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31;
+static int hf_lte_rrc_sib11_fragments;
+static int hf_lte_rrc_sib11_fragment;
+static int hf_lte_rrc_sib11_fragment_overlap;
+static int hf_lte_rrc_sib11_fragment_overlap_conflict;
+static int hf_lte_rrc_sib11_fragment_multiple_tails;
+static int hf_lte_rrc_sib11_fragment_too_long_fragment;
+static int hf_lte_rrc_sib11_fragment_error;
+static int hf_lte_rrc_sib11_fragment_count;
+static int hf_lte_rrc_sib11_reassembled_in;
+static int hf_lte_rrc_sib11_reassembled_length;
+static int hf_lte_rrc_sib11_reassembled_data;
+static int hf_lte_rrc_sib12_fragments;
+static int hf_lte_rrc_sib12_fragment;
+static int hf_lte_rrc_sib12_fragment_overlap;
+static int hf_lte_rrc_sib12_fragment_overlap_conflict;
+static int hf_lte_rrc_sib12_fragment_multiple_tails;
+static int hf_lte_rrc_sib12_fragment_too_long_fragment;
+static int hf_lte_rrc_sib12_fragment_error;
+static int hf_lte_rrc_sib12_fragment_count;
+static int hf_lte_rrc_sib12_reassembled_in;
+static int hf_lte_rrc_sib12_reassembled_length;
+static int hf_lte_rrc_sib12_reassembled_data;
+static int hf_lte_rrc_dcch_segment_fragments;
+static int hf_lte_rrc_dcch_segment_fragment;
+static int hf_lte_rrc_dcch_segment_fragment_overlap;
+static int hf_lte_rrc_dcch_segment_fragment_overlap_conflict;
+static int hf_lte_rrc_dcch_segment_fragment_multiple_tails;
+static int hf_lte_rrc_dcch_segment_fragment_too_long_fragment;
+static int hf_lte_rrc_dcch_segment_fragment_error;
+static int hf_lte_rrc_dcch_segment_fragment_count;
+static int hf_lte_rrc_dcch_segment_reassembled_in;
+static int hf_lte_rrc_dcch_segment_reassembled_length;
+static int hf_lte_rrc_dcch_segment_reassembled_data;
+static int hf_lte_rrc_measGapPatterns_r15_bit1;
+static int hf_lte_rrc_measGapPatterns_r15_bit2;
+static int hf_lte_rrc_measGapPatterns_r15_bit3;
+static int hf_lte_rrc_measGapPatterns_r15_bit4;
+static int hf_lte_rrc_measGapPatterns_r15_bit5;
+static int hf_lte_rrc_measGapPatterns_r15_bit6;
+static int hf_lte_rrc_measGapPatterns_r15_bit7;
+static int hf_lte_rrc_measGapPatterns_r15_bit8;
/* Initialize the subtree pointers */
-static int ett_lte_rrc = -1;
+static int ett_lte_rrc;
#include "packet-lte-rrc-ett.c"
-static gint ett_lte_rrc_featureGroupIndicators = -1;
-static gint ett_lte_rrc_featureGroupIndRel9Add = -1;
-static gint ett_lte_rrc_featureGroupIndRel10 = -1;
-static gint ett_lte_rrc_absTimeInfo = -1;
-static gint ett_lte_rrc_nas_SecurityParam = -1;
-static gint ett_lte_rrc_targetRAT_MessageContainer = -1;
-static gint ett_lte_rrc_siPsiSibContainer = -1;
-static gint ett_lte_rrc_dedicatedInfoNAS = -1;
-static gint ett_lte_rrc_timeInfo = -1;
-static gint ett_lte_rrc_serialNumber = -1;
-static gint ett_lte_rrc_warningType = -1;
-static gint ett_lte_rrc_dataCodingScheme = -1;
-static gint ett_lte_rrc_warningMessageSegment = -1;
-static gint ett_lte_rrc_interBandTDD_CA_WithDifferentConfig = -1;
-static gint ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12 = -1;
-static gint ett_lte_rrc_aperiodicCSI_Reporting_r13 = -1;
-static gint ett_lte_rrc_codebook_HARQ_ACK_r13 = -1;
-static gint ett_lte_rrc_sr_ConfigIndex = -1;
-static gint ett_lte_rrc_transmissionModeList_r12 = -1;
-static gint ett_lte_rrc_modifiedMPR_Behavior_r10 = -1;
-static gint ett_lte_rrc_sib11_fragment = -1;
-static gint ett_lte_rrc_sib11_fragments = -1;
-static gint ett_lte_rrc_sib12_fragment = -1;
-static gint ett_lte_rrc_sib12_fragments = -1;
-static gint ett_lte_rrc_nr_SecondaryCellGroupConfig_r15 = -1;
-static gint ett_lte_rrc_nr_RadioBearerConfig_r15 = -1;
-static gint ett_lte_rrc_nr_RadioBearerConfigS_r15 = -1;
-static gint ett_lte_rrc_sl_ConfigDedicatedForNR_r16 = -1;
-static gint ett_lte_rrc_nr_SecondaryCellGroupConfig = -1;
-static gint ett_lte_rrc_scg_ConfigResponseNR_r15 = -1;
-static gint ett_lte_rrc_scg_ConfigResponseNR_r16 = -1;
-static gint ett_lte_rrc_measResultSCG_r15 = -1;
-static gint ett_lte_rrc_measResultSCG_r16 = -1;
-static gint ett_lte_rrc_ul_DCCH_MessageNR_r15 = -1;
-static gint ett_lte_rrc_ul_DCCH_MessageNR_r16 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigNR_r15 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigSN_NR_r15 = -1;
-static gint ett_lte_rrc_sourceOtherConfigSN_NR_r15 = -1;
-static gint ett_lte_rrc_sourceContextEN_DC_r15 = -1;
-static gint ett_lte_rrc_requestedFreqBandsNR_MRDC_r15 = -1;
-static gint ett_lte_rrc_measGapPatterns_r15 = -1;
-static gint ett_lte_rrc_nas_Container_r15 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigIntra5GC_r15 = -1;
-static gint ett_lte_rrc_selectedbandCombinationInfoEN_DC_v1540 = -1;
-static gint ett_lte_rrc_requestedCapabilityCommon_r15 = -1;
-static gint ett_lte_rrc_sidelinkUEInformationNR_r16 = -1;
-static gint ett_lte_rrc_ueAssistanceInformationNR_r16 = -1;
-static gint ett_lte_rrc_sl_ParameterNR_r16 = -1;
-static gint ett_lte_rrc_v2x_BandParametersNR_r16 = -1;
-static gint ett_lte_rrc_ueAssistanceInformationNR_SCG_r16 = -1;
-static gint ett_lte_rrc_assistanceDataSIB_Element_r15 = -1;
-static gint ett_lte_rrc_overheatingAssistanceForSCG_r16 = -1;
-static gint ett_lte_rrc_overheatingAssistanceForSCG_FR2_2_r17 = -1;
-static gint ett_lte_rrc_triggerConditionSN_r17 = -1;
-
-static expert_field ei_lte_rrc_number_pages_le15 = EI_INIT;
-static expert_field ei_lte_rrc_si_info_value_changed = EI_INIT;
-static expert_field ei_lte_rrc_sibs_changing = EI_INIT;
-static expert_field ei_lte_rrc_sibs_changing_edrx = EI_INIT;
-static expert_field ei_lte_rrc_earthquake_warning_sys = EI_INIT;
-static expert_field ei_lte_rrc_commercial_mobile_alert_sys = EI_INIT;
-static expert_field ei_lte_rrc_unexpected_type_value = EI_INIT;
-static expert_field ei_lte_rrc_unexpected_length_value = EI_INIT;
-static expert_field ei_lte_rrc_too_many_group_a_rapids = EI_INIT;
-static expert_field ei_lte_rrc_invalid_drx_config = EI_INIT;
+static int ett_lte_rrc_featureGroupIndicators;
+static int ett_lte_rrc_featureGroupIndRel9Add;
+static int ett_lte_rrc_featureGroupIndRel10;
+static int ett_lte_rrc_absTimeInfo;
+static int ett_lte_rrc_nas_SecurityParam;
+static int ett_lte_rrc_targetRAT_MessageContainer;
+static int ett_lte_rrc_siPsiSibContainer;
+static int ett_lte_rrc_dedicatedInfoNAS;
+static int ett_lte_rrc_timeInfo;
+static int ett_lte_rrc_serialNumber;
+static int ett_lte_rrc_warningType;
+static int ett_lte_rrc_dataCodingScheme;
+static int ett_lte_rrc_warningMessageSegment;
+static int ett_lte_rrc_interBandTDD_CA_WithDifferentConfig;
+static int ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12;
+static int ett_lte_rrc_aperiodicCSI_Reporting_r13;
+static int ett_lte_rrc_codebook_HARQ_ACK_r13;
+static int ett_lte_rrc_sr_ConfigIndex;
+static int ett_lte_rrc_transmissionModeList_r12;
+static int ett_lte_rrc_modifiedMPR_Behavior_r10;
+static int ett_lte_rrc_sib11_fragment;
+static int ett_lte_rrc_sib11_fragments;
+static int ett_lte_rrc_sib12_fragment;
+static int ett_lte_rrc_sib12_fragments;
+static int ett_lte_rrc_dcch_segment_fragment;
+static int ett_lte_rrc_dcch_segment_fragments;
+static int ett_lte_rrc_nr_SecondaryCellGroupConfig_r15;
+static int ett_lte_rrc_nr_RadioBearerConfig_r15;
+static int ett_lte_rrc_nr_RadioBearerConfigS_r15;
+static int ett_lte_rrc_sl_ConfigDedicatedForNR_r16;
+static int ett_lte_rrc_nr_SecondaryCellGroupConfig;
+static int ett_lte_rrc_scg_ConfigResponseNR_r15;
+static int ett_lte_rrc_scg_ConfigResponseNR_r16;
+static int ett_lte_rrc_measResultSCG_r15;
+static int ett_lte_rrc_measResultSCG_r16;
+static int ett_lte_rrc_ul_DCCH_MessageNR_r15;
+static int ett_lte_rrc_ul_DCCH_MessageNR_r16;
+static int ett_lte_rrc_sourceRB_ConfigNR_r15;
+static int ett_lte_rrc_sourceRB_ConfigSN_NR_r15;
+static int ett_lte_rrc_sourceOtherConfigSN_NR_r15;
+static int ett_lte_rrc_sourceContextEN_DC_r15;
+static int ett_lte_rrc_requestedFreqBandsNR_MRDC_r15;
+static int ett_lte_rrc_measGapPatterns_r15;
+static int ett_lte_rrc_nas_Container_r15;
+static int ett_lte_rrc_sourceRB_ConfigIntra5GC_r15;
+static int ett_lte_rrc_selectedbandCombinationInfoEN_DC_v1540;
+static int ett_lte_rrc_requestedCapabilityCommon_r15;
+static int ett_lte_rrc_sidelinkUEInformationNR_r16;
+static int ett_lte_rrc_ueAssistanceInformationNR_r16;
+static int ett_lte_rrc_sl_ParameterNR_r16;
+static int ett_lte_rrc_v2x_BandParametersNR_r16;
+static int ett_lte_rrc_ueAssistanceInformationNR_SCG_r16;
+static int ett_lte_rrc_assistanceDataSIB_Element_r15;
+static int ett_lte_rrc_overheatingAssistanceForSCG_r16;
+static int ett_lte_rrc_overheatingAssistanceForSCG_FR2_2_r17;
+static int ett_lte_rrc_triggerConditionSN_r17;
+
+static expert_field ei_lte_rrc_number_pages_le15;
+static expert_field ei_lte_rrc_si_info_value_changed;
+static expert_field ei_lte_rrc_sibs_changing;
+static expert_field ei_lte_rrc_sibs_changing_edrx;
+static expert_field ei_lte_rrc_earthquake_warning_sys;
+static expert_field ei_lte_rrc_commercial_mobile_alert_sys;
+static expert_field ei_lte_rrc_unexpected_type_value;
+static expert_field ei_lte_rrc_unexpected_length_value;
+static expert_field ei_lte_rrc_too_many_group_a_rapids;
+static expert_field ei_lte_rrc_invalid_drx_config;
static const unit_name_string units_sr_periods = { " SR period", " SR periods" };
static const unit_name_string units_short_drx_cycles = { " shortDRX-Cycle", " shortDRX-Cycles" };
static reassembly_table lte_rrc_sib11_reassembly_table;
static reassembly_table lte_rrc_sib12_reassembly_table;
+static reassembly_table lte_rrc_dcch_segment_reassembly_table;
static const fragment_items lte_rrc_sib11_frag_items = {
&ett_lte_rrc_sib11_fragment,
@@ -380,6 +401,23 @@ static const fragment_items lte_rrc_sib12_frag_items = {
"SIB12 warning message segments"
};
+static const fragment_items lte_rrc_dcch_segment_frag_items = {
+ &ett_lte_rrc_dcch_segment_fragment,
+ &ett_lte_rrc_dcch_segment_fragments,
+ &hf_lte_rrc_dcch_segment_fragments,
+ &hf_lte_rrc_dcch_segment_fragment,
+ &hf_lte_rrc_dcch_segment_fragment_overlap,
+ &hf_lte_rrc_dcch_segment_fragment_overlap_conflict,
+ &hf_lte_rrc_dcch_segment_fragment_multiple_tails,
+ &hf_lte_rrc_dcch_segment_fragment_too_long_fragment,
+ &hf_lte_rrc_dcch_segment_fragment_error,
+ &hf_lte_rrc_dcch_segment_fragment_count,
+ &hf_lte_rrc_dcch_segment_reassembled_in,
+ &hf_lte_rrc_dcch_segment_reassembled_length,
+ &hf_lte_rrc_dcch_segment_reassembled_data,
+ "DCCH message segments"
+};
+
/* Forward declarations */
static int dissect_UECapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_RRCConnectionReconfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
@@ -942,7 +980,7 @@ static const value_string lte_rrc_messageSize_r14_vals[] =
static value_string_ext lte_rrc_messageSize_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_messageSize_r14_vals);
static void
-lte_rrc_timeConnFailure_r10_fmt(gchar *s, guint32 v)
+lte_rrc_timeConnFailure_r10_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%ums (%u)", 100*v, v);
}
@@ -960,7 +998,7 @@ static const value_string lte_rrc_n_r12_vals[] = {
};
static void
-lte_rrc_m_r12_fmt(gchar *s, guint32 v)
+lte_rrc_m_r12_fmt(char *s, uint32_t v)
{
if (v == 255) {
snprintf(s, ITEM_LABEL_LENGTH, "255 <= f(Nr) (255)");
@@ -2168,7 +2206,7 @@ static const value_string lte_rrc_RSRP_RangeSL4_vals[] = {
static value_string_ext lte_rrc_RSRP_RangeSL4_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_RSRP_RangeSL4_vals);
static void
-lte_rrc_RSRP_RangeNR_r15_fmt(gchar *s, guint32 v)
+lte_rrc_RSRP_RangeNR_r15_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
@@ -2268,7 +2306,7 @@ static const value_string lte_rrc_RSRQ_Range_vals[] = {
static value_string_ext lte_rrc_RSRQ_Range_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_RSRQ_Range_vals);
static void
-lte_rrc_RSRQ_RangeNR_r15_fmt(gchar *s, guint32 v)
+lte_rrc_RSRQ_RangeNR_r15_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
@@ -2317,13 +2355,13 @@ static const value_string lte_rrc_MBSFN_RSRQ_Range_vals[] = {
static value_string_ext lte_rrc_MBSFN_RSRQ_Range_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_MBSFN_RSRQ_Range_vals);
static void
-lte_rrc_availableAdmissionCapacityWLAN_fmt(gchar *s, guint32 v)
+lte_rrc_availableAdmissionCapacityWLAN_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%uus/s (%u)", 32*v, v);
}
static void
-lte_rrc_ue_RxTxTimeDiffResult_fmt(gchar *s, guint32 v)
+lte_rrc_ue_RxTxTimeDiffResult_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "T < 2Ts (0)");
@@ -2535,13 +2573,13 @@ static const value_string lte_rrc_excessDelay_r13_vals[] = {
static value_string_ext lte_rrc_excessDelay_r13_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_excessDelay_r13_vals);
static void
-lte_rrc_averageDelay_r16_fmt(gchar *s, guint32 v)
+lte_rrc_averageDelay_r16_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/10, v);
}
static void
-lte_rrc_subframeBoundaryOffsetResult_r13_fmt(gchar *s, guint32 v)
+lte_rrc_subframeBoundaryOffsetResult_r13_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "abs(deltaZ) < 700Ts (0)");
@@ -2553,7 +2591,7 @@ lte_rrc_subframeBoundaryOffsetResult_r13_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_RS_SINR_Range_r13_fmt(gchar *s, guint32 v)
+lte_rrc_RS_SINR_Range_r13_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "RS-SINR < -23dB (0)");
@@ -2565,7 +2603,7 @@ lte_rrc_RS_SINR_Range_r13_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_RS_SINR_RangeNR_r15_fmt(gchar *s, guint32 v)
+lte_rrc_RS_SINR_RangeNR_r15_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
@@ -2577,7 +2615,7 @@ lte_rrc_RS_SINR_RangeNR_r15_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_RSSI_Range_r13_fmt(gchar *s, guint32 v)
+lte_rrc_RSSI_Range_r13_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
@@ -2589,13 +2627,13 @@ lte_rrc_RSSI_Range_r13_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_scptm_FreqOffset_r14_fmt(gchar *s, guint32 v)
+lte_rrc_scptm_FreqOffset_r14_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2*v, v);
}
static void
-lte_rrc_offsetDFN_r14_fmt(gchar *s, guint32 v)
+lte_rrc_offsetDFN_r14_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "0ms (0)");
@@ -2607,13 +2645,13 @@ lte_rrc_offsetDFN_r14_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_thresholdWLAN_RSSI_fmt(gchar *s, guint32 v)
+lte_rrc_thresholdWLAN_RSSI_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -128+v, v);
}
static void
-lte_rrc_cr_Limit_r14_fmt(gchar *s, guint32 v)
+lte_rrc_cr_Limit_r14_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
@@ -2625,7 +2663,7 @@ lte_rrc_cr_Limit_r14_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_SL_CBR_r14_fmt(gchar *s, guint32 v)
+lte_rrc_SL_CBR_r14_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
@@ -2637,7 +2675,7 @@ lte_rrc_SL_CBR_r14_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_threshS_RSSI_CBR_r14_fmt(gchar *s, guint32 v)
+lte_rrc_threshS_RSSI_CBR_r14_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -112+(2*v), v);
}
@@ -2660,7 +2698,7 @@ static const value_string lte_rrc_schedulingInfoSIB1_NB_r13_vals[] = {
static value_string_ext lte_rrc_schedulingInfoSIB1_NB_r13_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_schedulingInfoSIB1_NB_r13_vals);
static void
-lte_rrc_NRSRP_Range_NB_r14_fmt(gchar *s, guint32 v)
+lte_rrc_NRSRP_Range_NB_r14_fmt(char *s, uint32_t v)
{
if (v == 0) {
snprintf(s, ITEM_LABEL_LENGTH, "NRSRP < -156dBm (0)");
@@ -2672,9 +2710,9 @@ lte_rrc_NRSRP_Range_NB_r14_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_NRSRQ_Range_NB_r14_fmt(gchar *s, guint32 v)
+lte_rrc_NRSRQ_Range_NB_r14_fmt(char *s, uint32_t v)
{
- gint32 rsrq = (guint32)v;
+ int32_t rsrq = (uint32_t)v;
if (rsrq == -30) {
snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -34dB (-30)");
} else if (rsrq < 0) {
@@ -2693,13 +2731,13 @@ lte_rrc_NRSRQ_Range_NB_r14_fmt(gchar *s, guint32 v)
}
static void
-lte_rrc_mbms_MaxBW_r14_fmt(gchar *s, guint32 v)
+lte_rrc_mbms_MaxBW_r14_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%u MHz (%u)", 40*v, v);
}
static void
-lte_rrc_dl_1024QAM_TotalWeightedLayers_r15_fmt(gchar *s, guint32 v)
+lte_rrc_dl_1024QAM_TotalWeightedLayers_r15_fmt(char *s, uint32_t v)
{
snprintf(s, ITEM_LABEL_LENGTH, "%u (%u)", 10+(2*v), v);
}
@@ -2723,10 +2761,10 @@ lte_rrc_call_dissector(dissector_handle_t handle, tvbuff_t *tvb, packet_info *pi
/*****************************************************************************/
typedef struct meas_capabilities_item_band_mappings_t {
- guint16 number_of_bands_set;
- guint16 number_of_interfreq_serving_read;
- guint16 number_of_interfreq_target_read;
- guint16 band_by_item[256];
+ uint16_t number_of_bands_set;
+ uint16_t number_of_interfreq_serving_read;
+ uint16_t number_of_interfreq_target_read;
+ uint16_t band_by_item[256];
} meas_capabilities_item_band_mappings_t;
@@ -2734,20 +2772,23 @@ typedef struct meas_capabilities_item_band_mappings_t {
/* Struct to store all current uses of packet private data */
typedef struct lte_rrc_private_data_t
{
- guint8 rat_type;
- guint8 target_rat_type;
- guint8 si_or_psi_geran;
- guint8 ra_preambles;
- guint16 message_identifier;
- guint8 warning_message_segment_type;
- guint8 warning_message_segment_number;
+ uint8_t rat_type;
+ uint8_t target_rat_type;
+ uint8_t si_or_psi_geran;
+ uint8_t ra_preambles;
+ uint16_t message_identifier;
+ uint8_t warning_message_segment_type;
+ uint8_t warning_message_segment_number;
drb_mapping_t drb_mapping;
drx_config_t drx_config;
pdcp_lte_security_info_t pdcp_security;
meas_capabilities_item_band_mappings_t meas_capabilities_item_band_mappings;
simult_pucch_pusch_cell_type cell_type;
- gboolean bcch_dl_sch_msg;
+ bool bcch_dl_sch_msg;
lpp_pos_sib_type_t pos_sib_type;
+ uint8_t dcch_segment_number;
+ tvbuff_t *dcch_segment;
+ bool dcch_segment_last;
} lte_rrc_private_data_t;
/* Helper function to get or create a struct that will be actx->private_data */
@@ -2781,13 +2822,13 @@ static drb_mapping_t* private_data_get_drb_mapping(asn1_ctx_t *actx)
/* RAT type */
-static guint8 private_data_get_rat_type(asn1_ctx_t *actx)
+static uint8_t private_data_get_rat_type(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->rat_type;
}
-static void private_data_set_rat_type(asn1_ctx_t *actx, guint8 rat_type)
+static void private_data_set_rat_type(asn1_ctx_t *actx, uint8_t rat_type)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->rat_type = rat_type;
@@ -2795,13 +2836,13 @@ static void private_data_set_rat_type(asn1_ctx_t *actx, guint8 rat_type)
/* Target RAT type */
-static guint8 private_data_get_rat_target_type(asn1_ctx_t *actx)
+static uint8_t private_data_get_rat_target_type(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->target_rat_type;
}
-static void private_data_set_rat_target_type(asn1_ctx_t *actx, guint8 target_rat_type)
+static void private_data_set_rat_target_type(asn1_ctx_t *actx, uint8_t target_rat_type)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->target_rat_type = target_rat_type;
@@ -2809,13 +2850,13 @@ static void private_data_set_rat_target_type(asn1_ctx_t *actx, guint8 target_rat
/* si_or_psi_geran */
-static guint8 private_data_get_si_or_psi_geran(asn1_ctx_t *actx)
+static uint8_t private_data_get_si_or_psi_geran(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->si_or_psi_geran;
}
-static void private_data_set_si_or_psi_geran(asn1_ctx_t *actx, guint8 si_or_psi_geran)
+static void private_data_set_si_or_psi_geran(asn1_ctx_t *actx, uint8_t si_or_psi_geran)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->si_or_psi_geran = si_or_psi_geran;
@@ -2823,13 +2864,13 @@ static void private_data_set_si_or_psi_geran(asn1_ctx_t *actx, guint8 si_or_psi_
/* Message identifier */
-static guint16 private_data_get_message_identifier(asn1_ctx_t *actx)
+static uint16_t private_data_get_message_identifier(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->message_identifier;
}
-static void private_data_set_message_identifier(asn1_ctx_t *actx, guint16 message_identifier)
+static void private_data_set_message_identifier(asn1_ctx_t *actx, uint16_t message_identifier)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->message_identifier = message_identifier;
@@ -2837,13 +2878,13 @@ static void private_data_set_message_identifier(asn1_ctx_t *actx, guint16 messag
/* Warning message segment type */
-static guint16 private_data_get_warning_message_segment_type(asn1_ctx_t *actx)
+static uint16_t private_data_get_warning_message_segment_type(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->warning_message_segment_type;
}
-static void private_data_set_warning_message_segment_type(asn1_ctx_t *actx, guint8 segment_type)
+static void private_data_set_warning_message_segment_type(asn1_ctx_t *actx, uint8_t segment_type)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->warning_message_segment_type = segment_type;
@@ -2851,13 +2892,13 @@ static void private_data_set_warning_message_segment_type(asn1_ctx_t *actx, guin
/* Warning message segment number */
-static guint16 private_data_get_warning_message_segment_number(asn1_ctx_t *actx)
+static uint16_t private_data_get_warning_message_segment_number(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->warning_message_segment_number;
}
-static void private_data_set_warning_message_segment_number(asn1_ctx_t *actx, guint8 segment_number)
+static void private_data_set_warning_message_segment_number(asn1_ctx_t *actx, uint8_t segment_number)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->warning_message_segment_number = segment_number;
@@ -2865,13 +2906,13 @@ static void private_data_set_warning_message_segment_number(asn1_ctx_t *actx, gu
/* Number of RA-preambles */
-static guint8 private_data_get_ra_preambles(asn1_ctx_t *actx)
+static uint8_t private_data_get_ra_preambles(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->ra_preambles;
}
-static void private_data_set_ra_preambles(asn1_ctx_t *actx, guint8 ra_preambles)
+static void private_data_set_ra_preambles(asn1_ctx_t *actx, uint8_t ra_preambles)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->ra_preambles = ra_preambles;
@@ -2893,12 +2934,12 @@ static meas_capabilities_item_band_mappings_t* private_data_meas_capabilities_it
return &private_data->meas_capabilities_item_band_mappings;
}
-static void set_freq_band_indicator(guint32 value, asn1_ctx_t *actx)
+static void set_freq_band_indicator(uint32_t value, asn1_ctx_t *actx)
{
/* Store band mapping for this item in the next position */
meas_capabilities_item_band_mappings_t *mappings = private_data_meas_capabilities_item_band_mappings(actx);
if (mappings->number_of_bands_set < 256) {
- mappings->band_by_item[mappings->number_of_bands_set++] = (guint16)value;
+ mappings->band_by_item[mappings->number_of_bands_set++] = (uint16_t)value;
}
}
@@ -2924,13 +2965,13 @@ static void private_data_set_simult_pucch_pusch_cell_type(asn1_ctx_t *actx, simu
}
/* Is top message a BCCH DL-SCH BR/MBMS */
-static gboolean private_data_get_bcch_dl_sch_msg(asn1_ctx_t *actx)
+static bool private_data_get_bcch_dl_sch_msg(asn1_ctx_t *actx)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
return private_data->bcch_dl_sch_msg;
}
-static void private_data_set_bcch_dl_sch_msg(asn1_ctx_t *actx, gboolean is_bcch_dl_sch)
+static void private_data_set_bcch_dl_sch_msg(asn1_ctx_t *actx, bool is_bcch_dl_sch)
{
lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
private_data->bcch_dl_sch_msg = is_bcch_dl_sch;
@@ -2948,13 +2989,49 @@ static void private_data_set_pos_sib_type(asn1_ctx_t *actx, lpp_pos_sib_type_t p
private_data->pos_sib_type = pos_sib_type;
}
+static uint8_t private_data_get_dcch_segment_number(asn1_ctx_t *actx)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ return private_data->dcch_segment_number;
+}
+
+static void private_data_set_dcch_segment_number(asn1_ctx_t *actx, uint8_t dcch_segment_number)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ private_data->dcch_segment_number = dcch_segment_number;
+}
+
+static tvbuff_t *private_data_get_dcch_segment(asn1_ctx_t *actx)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ return private_data->dcch_segment;
+}
+
+static void private_data_set_dcch_segment(asn1_ctx_t *actx, tvbuff_t *dcch_segment)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ private_data->dcch_segment = dcch_segment;
+}
+
+static bool private_data_get_dcch_segment_last(asn1_ctx_t *actx)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ return private_data->dcch_segment_last;
+}
+
+static void private_data_set_dcch_segment_last(asn1_ctx_t *actx, bool dcch_segment_last)
+{
+ lte_rrc_private_data_t *private_data = (lte_rrc_private_data_t*)lte_rrc_get_private_data(actx);
+ private_data->dcch_segment_last = dcch_segment_last;
+}
+
/*****************************************************************************/
static void
-lte_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
+lte_rrc_localTimeOffset_fmt(char *s, uint32_t v)
{
- gint32 time_offset = (gint32) v;
+ int32_t time_offset = (int32_t) v;
snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
(time_offset < 0) ? '-':'+', abs(time_offset) >> 2,
@@ -2962,15 +3039,15 @@ lte_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
}
static void
-dissect_lte_rrc_warningMessageSegment(tvbuff_t *warning_msg_seg_tvb, proto_tree *tree, packet_info *pinfo, guint8 dataCodingScheme)
+dissect_lte_rrc_warningMessageSegment(tvbuff_t *warning_msg_seg_tvb, proto_tree *tree, packet_info *pinfo, uint8_t dataCodingScheme)
{
- guint32 offset;
- guint8 nb_of_pages, length, *str;
+ uint32_t offset;
+ uint8_t nb_of_pages, length, *str;
proto_item *ti;
tvbuff_t *cb_data_page_tvb, *cb_data_tvb;
int i;
- nb_of_pages = tvb_get_guint8(warning_msg_seg_tvb, 0);
+ nb_of_pages = tvb_get_uint8(warning_msg_seg_tvb, 0);
ti = proto_tree_add_uint(tree, hf_lte_rrc_warningMessageSegment_nb_pages, warning_msg_seg_tvb, 0, 1, nb_of_pages);
if (nb_of_pages > 15) {
expert_add_info_format(pinfo, ti, &ei_lte_rrc_number_pages_le15,
@@ -2978,7 +3055,7 @@ dissect_lte_rrc_warningMessageSegment(tvbuff_t *warning_msg_seg_tvb, proto_tree
nb_of_pages = 15;
}
for (i = 0, offset = 1; i < nb_of_pages; i++) {
- length = tvb_get_guint8(warning_msg_seg_tvb, offset+82);
+ length = tvb_get_uint8(warning_msg_seg_tvb, offset+82);
cb_data_page_tvb = tvb_new_subset_length(warning_msg_seg_tvb, offset, length);
cb_data_tvb = dissect_cbs_data(dataCodingScheme, cb_data_page_tvb, tree, pinfo, 0);
if (cb_data_tvb) {
@@ -3112,73 +3189,55 @@ dissect_lte_rrc_featureGroupIndRel9Add(tvbuff_t *featureGroupIndRel9Add_tvb, asn
/* Functions to get enum values out of indices parsed */
/* If entry not found, return last element of array */
-static guint32 drx_lookup_onDurationTimer(guint32 idx)
+static uint32_t drx_lookup_onDurationTimer(uint32_t idx)
{
- static const guint32 vals[] = {1,2,3,4,5,6,8,10,20,30,40,50,60,80,100,200};
+ static const uint32_t vals[] = {1,2,3,4,5,6,8,10,20,30,40,50,60,80,100,200};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
-static guint32 drx_lookup_inactivityTimer(guint32 idx)
+static uint32_t drx_lookup_inactivityTimer(uint32_t idx)
{
- static const guint32 vals[] = {
- 1,2,3,4,5,6,8,10,20,30,40,50,60,80,100,200,300, 500,750,1280,1920,2560,0
+ static const uint32_t vals[] = {
+ 1,2,3,4,5,6,8,10,20,30,40,50,60,80,100,200,300,500,750,1280,1920,2560,0
};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
-static guint32 drx_lookup_retransmissionTimer(guint32 idx)
+static uint32_t drx_lookup_retransmissionTimer(uint32_t idx)
{
- static const guint32 vals[] = {1,2,4,6,8,16,24,33};
+ static const uint32_t vals[] = {1,2,4,6,8,16,24,33};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
-static guint32 drx_lookup_longCycle(guint32 idx)
+static uint32_t drx_lookup_longCycle(uint32_t idx)
{
- static const guint32 vals[] = {
+ static const uint32_t vals[] = {
10,20,32,40,64,80,128,160,256,320,512,640,1024,1280,2048,2560
};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
-static guint32 drx_lookup_longCycle_v1130(guint32 idx)
+static uint32_t drx_lookup_longCycle_v1130(uint32_t idx)
{
- static const guint32 vals[] = {
+ static const uint32_t vals[] = {
60,70
};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
-static guint32 drx_lookup_shortCycle(guint32 idx)
+static uint32_t drx_lookup_shortCycle(uint32_t idx)
{
- static const guint32 vals[] = {
+ static const uint32_t vals[] = {
2,5,8,10,16,20,32,40,64,80,128,160,256,320,512,640
};
- if (idx < (sizeof(vals)/sizeof(guint32))) {
- return vals[idx];
- }
- return (sizeof(vals)/(sizeof(guint32)) - 1);
+ return vals[MIN(idx, array_length(vals) - 1)];
}
static void drx_check_config_sane(drx_config_t *config, asn1_ctx_t *actx)
@@ -3216,7 +3275,7 @@ static void drx_check_config_sane(drx_config_t *config, asn1_ctx_t *actx)
}
/* Break sr-configIndex down into periodicity and offset. From 36.231, 10.1 */
-static void sr_lookup_configindex(guint32 config_index, guint16 *periodicity, guint16 *offset)
+static void sr_lookup_configindex(uint32_t config_index, uint16_t *periodicity, uint16_t *offset)
{
if (config_index < 5) {
*periodicity = 5;
@@ -3396,13 +3455,13 @@ dissect_lte_rrc_Handover_Preparation_Info(tvbuff_t *tvb, packet_info *pinfo, pro
/* Don't want elements inside message updating Info column, so set now and
freeze during dissection of PDU */
col_set_str(pinfo->cinfo, COL_INFO, "HandoverPreparationInformation");
- col_set_writable(pinfo->cinfo, COL_INFO, FALSE);
+ col_set_writable(pinfo->cinfo, COL_INFO, false);
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
dissect_lte_rrc_HandoverPreparationInformation_PDU(tvb, pinfo, lte_rrc_tree, NULL);
- col_set_writable(pinfo->cinfo, COL_INFO, TRUE);
+ col_set_writable(pinfo->cinfo, COL_INFO, true);
return tvb_captured_length(tvb);
}
@@ -4391,6 +4450,50 @@ void proto_register_lte_rrc(void) {
{ "Reassembled Data", "lte-rrc.warningMessageSegment_r9.reassembled_data",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragments,
+ { "Fragments", "lte-rrc.dedicatedMessageSegment_r16.fragments",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment,
+ { "Fragment", "lte-rrc.dedicatedMessageSegment_r16.fragment",
+ FT_FRAMENUM, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_overlap,
+ { "Fragment Overlap", "lte-rrc.dedicatedMessageSegment_r16.fragment_overlap",
+ FT_BOOLEAN, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_overlap_conflict,
+ { "Fragment Overlap Conflict", "lte-rrc.dedicatedMessageSegment_r16.fragment_overlap_conflict",
+ FT_BOOLEAN, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_multiple_tails,
+ { "Fragment Multiple Tails", "lte-rrc.dedicatedMessageSegment_r16.fragment_multiple_tails",
+ FT_BOOLEAN, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_too_long_fragment,
+ { "Too Long Fragment", "lte-rrc.dedicatedMessageSegment_r16.fragment_too_long_fragment",
+ FT_BOOLEAN, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_error,
+ { "Fragment Error", "lte-rrc.dedicatedMessageSegment_r16.fragment_error",
+ FT_FRAMENUM, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_fragment_count,
+ { "Fragment Count", "lte-rrc.dedicatedMessageSegment_r16.fragment_count",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_reassembled_in,
+ { "Reassembled In", "lte-rrc.dedicatedMessageSegment_r16.reassembled_in",
+ FT_FRAMENUM, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_reassembled_length,
+ { "Reassembled Length", "lte-rrc.dedicatedMessageSegment_r16.reassembled_length",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_lte_rrc_dcch_segment_reassembled_data,
+ { "Reassembled Data", "lte-rrc.dedicatedMessageSegment_r16.reassembled_data",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_lte_rrc_measGapPatterns_r15_bit1,
{ "Gap Pattern 4", "lte-rrc.measGapPatterns_r15.bit1",
FT_BOOLEAN, 8, TFS(&tfs_supported_not_supported), 0x80,
@@ -4426,7 +4529,7 @@ void proto_register_lte_rrc(void) {
};
/* List of subtrees */
- static gint *ett[] = {
+ static int *ett[] = {
&ett_lte_rrc,
#include "packet-lte-rrc-ettarr.c"
@@ -4454,6 +4557,8 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc_sib11_fragments,
&ett_lte_rrc_sib12_fragment,
&ett_lte_rrc_sib12_fragments,
+ &ett_lte_rrc_dcch_segment_fragment,
+ &ett_lte_rrc_dcch_segment_fragments,
&ett_lte_rrc_nr_SecondaryCellGroupConfig_r15,
&ett_lte_rrc_nr_RadioBearerConfig_r15,
&ett_lte_rrc_nr_RadioBearerConfigS_r15,
@@ -4545,11 +4650,15 @@ void proto_register_lte_rrc(void) {
lte_rrc_etws_cmas_dcs_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal);
lte_rrc_system_info_value_changed_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal);
+ lte_rrc_dcch_segment_ueid_count_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal);
+ lte_rrc_dcch_segment_id_tree = wmem_tree_new_autoreset(wmem_epan_scope(), wmem_file_scope());
reassembly_table_register(&lte_rrc_sib11_reassembly_table,
- &addresses_reassembly_table_functions);
+ &addresses_reassembly_table_functions);
reassembly_table_register(&lte_rrc_sib12_reassembly_table,
- &addresses_reassembly_table_functions);
+ &addresses_reassembly_table_functions);
+ reassembly_table_register(&lte_rrc_dcch_segment_reassembly_table,
+ &addresses_reassembly_table_functions);
/* Register configuration preferences */
lte_rrc_module = prefs_register_protocol(proto_lte_rrc, NULL);
@@ -4557,6 +4666,10 @@ void proto_register_lte_rrc(void) {
"Show NAS PDU in root packet details",
"Whether the NAS PDU should be shown in the root packet details tree",
&lte_rrc_nas_in_root_tree);
+ prefs_register_bool_preference(lte_rrc_module, "reassemble_dcch_segments",
+ "Try to reassemble DCCH segmented messages",
+ "Whether the LTE RRC dissector should attempt to reassemble DCCH segmented messages",
+ &lte_rrc_reassemble_dcch_segments);
}