From 6b41ad918b2aa8f67d103bf5981c78716b64e554 Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Tue, 15 Nov 2022 15:23:52 +0100 Subject: [PATCH] PCAP: upgrade dissector to v17.0.0 In their infinite wisdom, 3GPP succeeded to make non backward compatible ASN.1 description Closes #18646 --- .../asn1/pcap/PCAP-CommonDataTypes.asn | 6 +- epan/dissectors/asn1/pcap/PCAP-Constants.asn | 43 +- epan/dissectors/asn1/pcap/PCAP-Containers.asn | 14 +- epan/dissectors/asn1/pcap/PCAP-IEs.asn | 488 ++++- .../asn1/pcap/PCAP-PDU-Contents.asn | 99 +- .../asn1/pcap/PCAP-PDU-Descriptions.asn | 8 +- .../asn1/pcap/packet-pcap-template.c | 2 +- epan/dissectors/asn1/pcap/pcap.cnf | 27 +- epan/dissectors/packet-pcap.c | 1856 +++++++++++++++-- 9 files changed, 2279 insertions(+), 264 deletions(-) diff --git a/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn b/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn index d2f448e1c5..a8e6d15b9c 100644 --- a/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn +++ b/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04) -- --9.3.5 Common Definitions -- ************************************************************** @@ -9,10 +9,10 @@ -- ************************************************************** PCAP-CommonDataTypes { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) umts-Access (20) modules (3) pcap(4) version1 (1) pcap-CommonDataTypes (3) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN diff --git a/epan/dissectors/asn1/pcap/PCAP-Constants.asn b/epan/dissectors/asn1/pcap/PCAP-Constants.asn index 2f72c09009..b1537ba49b 100644 --- a/epan/dissectors/asn1/pcap/PCAP-Constants.asn +++ b/epan/dissectors/asn1/pcap/PCAP-Constants.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04) -- -- 9.3.6 Constant Definitions -- ************************************************************** @@ -8,11 +8,11 @@ -- -- ************************************************************** -PCAP-Constants { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) -umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Constants (4) } +PCAP-Constants { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Constants (4) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -62,7 +62,7 @@ maxNrOfSets INTEGER ::= 3 maxRateMatching INTEGER ::= 256 maxNrOfTFs INTEGER ::= 32 maxTTI-count INTEGER ::= 4 -maxTS-1 INTEGER ::= 13 +maxTS-1 INTEGER ::= 13 maxCCTrCH INTEGER ::= 8 maxTF INTEGER ::= 32 maxTFC INTEGER ::= 1024 @@ -84,6 +84,11 @@ maxGANSSClockMod INTEGER ::= 4 maxGANSS-1 INTEGER ::= 7 maxNrOfIRATMeasurements INTEGER ::= 16 maxReportedGERANCells INTEGER ::= 6 +maxIonGridInfo INTEGER ::= 320 +maxAddPos INTEGER ::= 8 +maxBeacons INTEGER ::= 64 +maxBTs INTEGER ::= 32 +maxWLANs INTEGER ::= 64 -- ************************************************************** -- @@ -164,7 +169,7 @@ id-GANSS-CommonAssistanceData ProtocolIE-ID ::= 69 id-GANSS-GenericAssistanceDataList ProtocolIE-ID ::= 70 id-GANSS-MeasuredResultsList ProtocolIE-ID ::= 71 id-GANSS-UTRAN-TRU ProtocolIE-ID ::= 72 -id-GANSSPositioning ProtocolIE-ID ::= 73 +id-GANSSPositioning ProtocolIE-ID ::= 73 id-GANSS-PositioningDataSet ProtocolIE-ID ::= 74 id-GNSS-PositioningMethod ProtocolIE-ID ::= 75 id-NetworkAssistedGANSSSuport ProtocolIE-ID ::= 76 @@ -175,8 +180,8 @@ id-angleOfArrivalLCR ProtocolIE-ID ::= 80 id-extendedTimingAdvanceLCR ProtocolIE-ID ::= 81 id-additionalMeasurementInforLCR ProtocolIE-ID ::= 82 id-timingAdvanceLCR-R7 ProtocolIE-ID ::= 83 -id-rxTimingDeviationLCR ProtocolIE-ID ::= 84 -id-GPSReferenceTimeUncertainty ProtocolIE-ID ::= 85 +id-rxTimingDeviationLCR ProtocolIE-ID ::= 84 +id-GPSReferenceTimeUncertainty ProtocolIE-ID ::= 85 id-GANSS-AddIonoModelReq ProtocolIE-ID ::= 86 id-GANSS-EarthOrientParaReq ProtocolIE-ID ::= 87 id-GANSS-Additional-Ionospheric-Model ProtocolIE-ID ::= 88 @@ -217,7 +222,23 @@ id-GANSS-Day-Cycle ProtocolIE-ID ::= 122 id-ganss-Delta-T ProtocolIE-ID ::= 123 id-requestedCellIDGERANMeasurements ProtocolIE-ID ::= 124 id-CellId-IRATMeasuredResultsSets ProtocolIE-ID ::= 125 -id-IMSI ProtocolIE-ID ::= 126 -id-IMEI ProtocolIE-ID ::= 127 +-- WS extension +id-Unknown-126 ProtocolIE-ID ::= 126 +id-Unknown-127 ProtocolIE-ID ::= 127 +id-IMSI ProtocolIE-ID ::= 128 +id-IMEI ProtocolIE-ID ::= 129 +id-GANSS-alm-keplerianBDSAlmanac ProtocolIE-ID ::= 130 +id-BDS-Ionospheric-Grid-Model ProtocolIE-ID ::= 131 +id-DBDS-Correction-Information ProtocolIE-ID ::= 132 +id-BDSIonosphericGridModel ProtocolIE-ID ::= 133 +id-DBDSCorrection ProtocolIE-ID ::= 134 +id-Confidence ProtocolIE-ID ::= 135 +id-ExtraDopplerInfoExtension ProtocolIE-ID ::= 136 +id-GANSS-Confidence ProtocolIE-ID ::= 137 +id-GANSS-ExtraDopplerExtension ProtocolIE-ID ::= 138 +id-Additional-PositioningDataSet ProtocolIE-ID ::= 139 +id-Additional-PositioningMethod ProtocolIE-ID ::= 140 +id-AddPos-MeasuredResults ProtocolIE-ID ::= 141 +id-AddPosSupport ProtocolIE-ID ::= 142 END diff --git a/epan/dissectors/asn1/pcap/PCAP-Containers.asn b/epan/dissectors/asn1/pcap/PCAP-Containers.asn index fea32ba24d..f495f8af48 100644 --- a/epan/dissectors/asn1/pcap/PCAP-Containers.asn +++ b/epan/dissectors/asn1/pcap/PCAP-Containers.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04) -- -- 9.3.7 Container Definitions -- ************************************************************** @@ -9,10 +9,10 @@ -- ************************************************************** PCAP-Containers { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Containers (5) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -95,11 +95,11 @@ WITH SYNTAX { -- -- ************************************************************** -ProtocolIE-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::= +ProtocolIE-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE (SIZE (0..maxProtocolIEs)) OF ProtocolIE-Field {{IEsSetParam}} -ProtocolIE-Single-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::= +ProtocolIE-Single-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::= ProtocolIE-Field {{IEsSetParam}} ProtocolIE-Field {PCAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { @@ -124,7 +124,7 @@ ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, PCAP-PROTO -- -- ************************************************************** -ProtocolExtensionContainer {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= +ProtocolExtensionContainer {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE (SIZE (1..maxProtocolExtensions)) OF ProtocolExtensionField {{ExtensionSetParam}} @@ -140,7 +140,7 @@ ProtocolExtensionField {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC -- -- ************************************************************** -PrivateIE-Container {PCAP-PRIVATE-IES : IEsSetParam } ::= +PrivateIE-Container {PCAP-PRIVATE-IES : IEsSetParam } ::= SEQUENCE (SIZE (1.. maxPrivateIEs)) OF PrivateIE-Field {{IEsSetParam}} diff --git a/epan/dissectors/asn1/pcap/PCAP-IEs.asn b/epan/dissectors/asn1/pcap/PCAP-IEs.asn index 3e04f9dafe..d88e85c4cf 100644 --- a/epan/dissectors/asn1/pcap/PCAP-IEs.asn +++ b/epan/dissectors/asn1/pcap/PCAP-IEs.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04 -- -- 9.3.4 Information Element Definitions -- ************************************************************** @@ -51,6 +51,11 @@ IMPORTS maxGANSS-1, maxNrOfIRATMeasurements, maxReportedGERANCells, + maxIonGridInfo, + maxAddPos, + maxBeacons, + maxBTs, + maxWLANs, id-UTRAN-GPSReferenceTime, @@ -115,7 +120,20 @@ IMPORTS id-GPS-Week-Cycle, id-GANSS-Day-Cycle, id-ganss-Delta-T, - id-requestedCellIDGERANMeasurements + id-requestedCellIDGERANMeasurements, + id-GANSS-alm-keplerianBDSAlmanac, + id-BDS-Ionospheric-Grid-Model, + id-DBDS-Correction-Information, + id-BDSIonosphericGridModel, + id-DBDSCorrection, + id-Confidence, + id-ExtraDopplerInfoExtension, + id-GANSS-Confidence, + id-GANSS-ExtraDopplerExtension, + id-Additional-PositioningDataSet, + id-Additional-PositioningMethod, + id-AddPos-MeasuredResults, + id-AddPosSupport FROM PCAP-Constants @@ -163,6 +181,105 @@ AdditionalMethodType ::= ENUMERATED { ... } +-- ************************************************************** +-- +-- Additional Positioning Measured Results +-- +-- ************************************************************** + +AddPos-MeasuredResults ::= SEQUENCE (SIZE (1..maxAddPos)) OF AddPos-MeasuredResults-Element + +AddPos-MeasuredResults-Element ::= SEQUENCE { + timestamp UTCTime OPTIONAL, + type CHOICE { + barometricPressure SEQUENCE { + uncompensatedBarometricPressure BaroMeasurement, + iE-Extensions ProtocolExtensionContainer { { BarometricPressure-ExtIEs } } OPTIONAL, + ... + }, + wlan SEQUENCE { + wlanMeasurementList WLANMeasurementList, + iE-Extensions ProtocolExtensionContainer { { WLANMeasurementList-ExtIEs } } OPTIONAL, + ... + }, + bt SEQUENCE { + btMeasurementList BTMeasurementList, + iE-Extensions ProtocolExtensionContainer { { BTMeasurementList-ExtIEs } } OPTIONAL, + ... + }, + mbs SEQUENCE { + mbsMeasurementList MBSMeasurementList, + iE-Extensions ProtocolExtensionContainer { { MBSMeasurementList-ExtIEs } } OPTIONAL, + ... + }, + ... + }, + ... +} + +BarometricPressure-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +WLANMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +BTMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +WLANMeasurementList ::= SEQUENCE (SIZE (1..maxWLANs)) OF WLANMeasurementList-Element + +WLANMeasurementList-Element ::= SEQUENCE { + wlanBSSID OCTET STRING (SIZE (6)), + wlanSSID OCTET STRING (SIZE(1..32)) OPTIONAL, + wlanRSSI INTEGER(-127..128) OPTIONAL, + wlanRTTvalue INTEGER(0..16777215) OPTIONAL, + wlanRTTunits ENUMERATED { microseconds,hundredsofnanoseconds, tensofnanoseconds, nanoseconds, tenthsofnanosecond, ...} OPTIONAL, + wlanRTTaccuracy INTEGER(0..255) OPTIONAL, + wlanAPChannelFrequency INTEGER(0..256) OPTIONAL, + wlanServingFlag BOOLEAN OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { WLANMeasurementList-Element-ExtIEs } } OPTIONAL, + ... +} + +WLANMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +BTMeasurementList ::= SEQUENCE (SIZE (1..maxBTs)) OF BTMeasurementList-Element + +BTMeasurementList-Element ::= SEQUENCE { + btADDR OCTET STRING (SIZE(6)), + btRSSI INTEGER(-127..128) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { BTMeasurementList-Element-ExtIEs } } OPTIONAL, + ... +} + +BTMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSMeasurementList ::= SEQUENCE (SIZE (1..maxBeacons)) OF MBSMeasurementList-Element + +MBSMeasurementList-Element ::= SEQUENCE { + transmitterID INTEGER(0..32767), + codephase INTEGER(0..2097151), + codephaseRMS INTEGER(0..63), + iE-Extensions ProtocolExtensionContainer { { MBSMeasurementList-Element-ExtIEs } } OPTIONAL, + ... +} + +MBSMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +BaroMeasurement ::= INTEGER(30000..115000) -- ************************************************************** -- @@ -229,7 +346,10 @@ CauseRadioNetwork ::= ENUMERATED { position-calculation-error-invalid-GANSS-measured-results, position-calculation-error-AGANSS-positioning-method-not-supported, ue-positioning-error-Not-enough-GANSS-Satellites, - ue-positioning-error-Not-Accomplished-GANSS-Timing-of-Cell-Frames + ue-positioning-error-Not-Accomplished-GANSS-Timing-of-Cell-Frames, + position-calculation-error-invalid-BDS-measured-results, + ue-Positioning-Error-Not-enough-BDS-Satellites, + position-calculation-error-A-BDS-positioning-method-not-supported } CauseTransport ::= ENUMERATED { @@ -590,6 +710,7 @@ ClientType ::= ENUMERATED { plmn-operator-target-ms-service-support, ... } + -- ************************************************************** -- -- CriticalityDiagnostics @@ -726,11 +847,11 @@ RRC ::= INTEGER (-127..127) -- IMEI -IMEI ::= OCTET STRING (SIZE (3..8)) +IMEI ::= OCTET STRING (SIZE (8)) -- IMSI -IMSI ::= OCTET STRING (SIZE (8)) +IMSI ::= OCTET STRING (SIZE (3..8)) -- ************************************************************** @@ -896,7 +1017,7 @@ Extension-ReferenceTimeChoice-IE PCAP-PROTOCOL-IES ::= { } -Cell-Timing ::= SEQUENCE { +Cell-Timing ::= SEQUENCE { sfn INTEGER (0..4095), uC-ID UC-ID, iE-Extensions ProtocolExtensionContainer { { Cell-Timing-ExtIEs } } OPTIONAL, @@ -937,13 +1058,14 @@ PositionDataUEbased-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { PositionData ::= SEQUENCE { positioningDataDiscriminator PositioningDataDiscriminator, positioningDataSet PositioningDataSet OPTIONAL, --- This IE shall be present if the PositioningDataDiscriminator IE is set to the value "0000" -- +-- This IE shall be present if the PositioningDataDiscriminator IE is set to the value "0000" -- iE-Extensions ProtocolExtensionContainer { {PositionData-ExtIEs} } OPTIONAL, ... } PositionData-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - { ID id-GANSS-PositioningDataSet CRITICALITY ignore EXTENSION GANSS-PositioningDataSet PRESENCE optional }, + { ID id-GANSS-PositioningDataSet CRITICALITY ignore EXTENSION GANSS-PositioningDataSet PRESENCE optional}| + { ID id-Additional-PositioningDataSet CRITICALITY ignore EXTENSION Additional-PositioningDataSet PRESENCE optional}, ... } @@ -957,6 +1079,11 @@ PositioningDataSet ::= SEQUENCE(SIZE(1..maxSet)) OF PositioningMethodAndUsage PositioningMethodAndUsage ::= OCTET STRING (SIZE(1)) +Additional-PositioningDataSet ::= SEQUENCE(SIZE(1..maxAddPos)) OF Additional-PositioningMethodAndUsage + +Additional-PositioningMethodAndUsage ::= OCTET STRING (SIZE(1)) + + -- ************************************************************** -- -- GPS-AcquisitionAssistance: @@ -972,8 +1099,9 @@ GPS-AcquisitionAssistance ::= SEQUENCE { } GPS-AcquisitionAssistance-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - {ID id-UTRAN-GPSReferenceTime CRITICALITY ignore EXTENSION UTRAN-GPSReferenceTime PRESENCE optional} | - {ID id-GPSReferenceTimeUncertainty CRITICALITY ignore EXTENSION GPSReferenceTimeUncertainty PRESENCE optional} , + {ID id-UTRAN-GPSReferenceTime CRITICALITY ignore EXTENSION UTRAN-GPSReferenceTime PRESENCE optional}| + {ID id-GPSReferenceTimeUncertainty CRITICALITY ignore EXTENSION GPSReferenceTimeUncertainty PRESENCE optional}| + {ID id-Confidence CRITICALITY ignore EXTENSION Confidence PRESENCE optional}, ... } @@ -994,6 +1122,7 @@ AcquisitionSatInfo ::= SEQUENCE { } AcquisitionSatInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + {ID id-ExtraDopplerInfoExtension CRITICALITY ignore EXTENSION ExtraDopplerInfoExtension PRESENCE optional}, ... } @@ -1008,9 +1137,23 @@ ExtraDopplerInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +ExtraDopplerInfoExtension ::= SEQUENCE { + doppler1stOrder INTEGER (-42..21), + dopplerUncertaintyExtension DopplerUncertaintyExtension, + iE-Extensions ProtocolExtensionContainer { { ExtraDopplerInfoExtension-ExtIEs } } OPTIONAL, + ... +} + +ExtraDopplerInfoExtension-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + DopplerUncertainty ::= ENUMERATED { hz12-5, hz25, hz50, hz100, hz200, ...} +DopplerUncertaintyExtension ::= ENUMERATED { + hz300, hz400, hz500, hz600, noInformation, ...} + CodePhaseSearchWindow ::= ENUMERATED { w1023, w1, w2, w3, w4, w6, w8, w12, w16, w24, w32, w48, w64, @@ -1039,6 +1182,8 @@ AzimuthAndElevationLSB-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +Confidence ::= INTEGER(0..100) + -- ************************************************************** -- -- GANSS Elements @@ -1060,7 +1205,7 @@ AuxInfoGANSS-ID1-element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { AuxInfoGANSS-ID3 ::= SEQUENCE (SIZE(1.. maxGANSSSat)) OF AuxInfoGANSS-ID3-element -AuxInfoGANSS-ID3-element ::= SEQUENCE { +AuxInfoGANSS-ID3-element ::= SEQUENCE { svID INTEGER(0..63), signalsAvailable BIT STRING (SIZE(8)), channelNumber INTEGER (-7..13), @@ -1146,7 +1291,7 @@ DGANSS-SignalInformationItem ::= SEQUENCE { } DGANSS-SignalInformationItem-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - {ID id-DGNSS-ValidityPeriod CRITICALITY ignore EXTENSION DGNSS-ValidityPeriod PRESENCE optional}, + {ID id-DGNSS-ValidityPeriod CRITICALITY ignore EXTENSION DGNSS-ValidityPeriod PRESENCE optional}, ... } @@ -1155,7 +1300,8 @@ GANSS-AddClockModels ::= CHOICE { cnavClockModel CNAVclockModel, glonassClockModel GLONASSclockModel, sbasClockModel SBASclockModel, - ... + ..., + bDSClockModel BDSClockModel } GANSS-AddOrbitModels ::= CHOICE { @@ -1163,7 +1309,8 @@ GANSS-AddOrbitModels ::= CHOICE { cnavKeplerianSet NavModel-CNAVKeplerianSet, glonassECEF NavModel-GLONASSecef, sbasECEF NavModel-SBASecef, - ... + ..., + bDSKeplerianSet NavModel-BDSKeplerianSet } GANSS-Additional-Ionospheric-Model ::= SEQUENCE { @@ -1194,6 +1341,41 @@ GANSS-Additional-UTC-Models ::= CHOICE { utcModel1 UTCmodelSet1, utcModel2 UTCmodelSet2, utcModel3 UTCmodelSet3, + ..., + utcModel4 UTCmodelSet4 +} + +GANSS-ALM-BDSKeplericanset ::= SEQUENCE { + satellite-Information-BDS-KP-List Satellite-Information-BDS-KP-List, + ie-Extensions ProtocolExtensionContainer { { GANSS-ALM-BDSKeplericanset-ExtIEs } } OPTIONAL, + ... +} + +GANSS-ALM-BDSKeplericanset-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +Satellite-Information-BDS-KP-List ::= SEQUENCE (SIZE (1..maxGANSSSatAlmanac)) OF Satellite-Information-BDS-KP-Item + +Satellite-Information-BDS-KP-Item ::= SEQUENCE { + sVID-BDS INTEGER (0..63), + tOA-BDS BIT STRING( SIZE(8) ), + a21-BDS BIT STRING( SIZE(24) ), + e-BDS BIT STRING( SIZE(17) ), + omg-lower-BDS BIT STRING( SIZE(24) ), + m0-BDS BIT STRING( SIZE(24) ), + omg-0-BDS BIT STRING( SIZE(24) ), + omg-upper-BDS BIT STRING( SIZE(17) ), + delta-i-BDS BIT STRING( SIZE(16) ), + a0-BDS BIT STRING( SIZE(11) ), + a1-BDS BIT STRING( SIZE(11) ), +-- The following IE is mandatory present if the sVID-BDS is between 0 and 29 and not needed otherwise. + hea-BDS BIT STRING( SIZE(9) ) OPTIONAL, + ie-Extensions ProtocolExtensionContainer { { Satellite-Information-BDS-KP-Item-ExtIEs } } OPTIONAL, + ... +} + +Satellite-Information-BDS-KP-Item-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } @@ -1274,11 +1456,12 @@ GANSS-AlmanacModel ::= CHOICE { Extension-GANSS-AlmanacModel ::= ProtocolIE-Single-Container {{ Extension-GANSS-AlmanacModel-IE }} Extension-GANSS-AlmanacModel-IE PCAP-PROTOCOL-IES ::= { - { ID id-GANSS-alm-keplerianNAVAlmanac CRITICALITY ignore TYPE GANSS-ALM-NAVKeplerianSet PRESENCE mandatory}| - { ID id-GANSS-alm-keplerianReducedAlmanac CRITICALITY ignore TYPE GANSS-ALM-ReducedKeplerianSet PRESENCE mandatory}| - { ID id-GANSS-alm-keplerianMidiAlmanac CRITICALITY ignore TYPE GANSS-ALM-MidiAlmanacSet PRESENCE mandatory}| - { ID id-GANSS-alm-keplerianGLONASS CRITICALITY ignore TYPE GANSS-ALM-GlonassAlmanacSet PRESENCE mandatory}| - { ID id-GANSS-alm-ecefSBASAlmanac CRITICALITY ignore TYPE GANSS-ALM-ECEFsbasAlmanacSet PRESENCE mandatory} + { ID id-GANSS-alm-keplerianNAVAlmanac CRITICALITY ignore TYPE GANSS-ALM-NAVKeplerianSet PRESENCE mandatory}| + { ID id-GANSS-alm-keplerianReducedAlmanac CRITICALITY ignore TYPE GANSS-ALM-ReducedKeplerianSet PRESENCE mandatory}| + { ID id-GANSS-alm-keplerianMidiAlmanac CRITICALITY ignore TYPE GANSS-ALM-MidiAlmanacSet PRESENCE mandatory}| + { ID id-GANSS-alm-keplerianGLONASS CRITICALITY ignore TYPE GANSS-ALM-GlonassAlmanacSet PRESENCE mandatory}| + { ID id-GANSS-alm-ecefSBASAlmanac CRITICALITY ignore TYPE GANSS-ALM-ECEFsbasAlmanacSet PRESENCE mandatory}| + { ID id-GANSS-alm-keplerianBDSAlmanac CRITICALITY ignore TYPE GANSS-ALM-BDSKeplericanset PRESENCE mandatory} } @@ -1384,6 +1567,17 @@ GANSS-ExtraDoppler-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +GANSS-ExtraDopplerExtension ::= SEQUENCE { + dopplerFirstOrder INTEGER(-42..21), + dopplerUncertaintyExtension ENUMERATED{dH60,dH80,dH100,dH120,noInformation}, + ie-Extensions ProtocolExtensionContainer { { GANSS-ExtraDopplerExtension-ExtIEs } } OPTIONAL, + ... +} + +GANSS-ExtraDopplerExtension-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + GANSS-GenericAssistanceDataList ::= SEQUENCE (SIZE (1..maxGANSS)) OF GANSSGenericAssistanceData GANSSGenericAssistanceData ::= SEQUENCE{ @@ -1402,11 +1596,73 @@ GANSSGenericAssistanceData ::= SEQUENCE{ GANSSGenericAssistance-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { { ID id-GANSS-Additional-Time-Models CRITICALITY ignore EXTENSION GANSS-Additional-Time-Models PRESENCE optional }| - { ID id-GANSS-Additional-Navigation-Models CRITICALITY ignore EXTENSION GANSS-Additional-Navigation-Models PRESENCE optional }| - { ID id-GANSS-Additional-UTC-Models CRITICALITY ignore EXTENSION GANSS-Additional-UTC-Models PRESENCE optional }| - { ID id-GANSS-Auxiliary-Information CRITICALITY ignore EXTENSION GANSS-Auxiliary-Information PRESENCE optional }| - -- the following IE shall be present if 'GANSSID' in 'GANSSGenericAssistanceData' is '0' (SBAS) - { ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional }, + { ID id-GANSS-Additional-Navigation-Models CRITICALITY ignore EXTENSION GANSS-Additional-Navigation-Models PRESENCE optional }| + { ID id-GANSS-Additional-UTC-Models CRITICALITY ignore EXTENSION GANSS-Additional-UTC-Models PRESENCE optional }| + { ID id-GANSS-Auxiliary-Information CRITICALITY ignore EXTENSION GANSS-Auxiliary-Information PRESENCE optional }| + -- the following IE shall be present if ‘GANSSID’ in ‘GANSSGenericAssistanceData’ is ‘0’ (SBAS) + { ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional }| + { ID id-BDS-Ionospheric-Grid-Model CRITICALITY ignore EXTENSION BDS-Ionospheric-Grid-Model PRESENCE optional }| + { ID id-DBDS-Correction-Information CRITICALITY ignore EXTENSION DBDS-Correction-Information PRESENCE optional }, + ... +} + +BDS-Ionospheric-Grid-Model ::= SEQUENCE { + bDS-Reference-Time BDS-Reference-Time, + bDS-Ionospheric-Grid-Information BDS-Ionospheric-Grid-Information, + ie-Extensions ProtocolExtensionContainer { { BDS-Ionospheric-Grid-Model-ExtIEs } } OPTIONAL, + ... +} + +BDS-Ionospheric-Grid-Model-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +BDS-Reference-Time ::= INTEGER(0..3570) -- by step of 30 + +BDS-Ionospheric-Grid-Information ::= SEQUENCE(SIZE(1.. maxIonGridInfo)) OF SEQUENCE { + iGP-number-BDS INTEGER (1..320), + vertical-Delay-BDS BIT STRING ( SIZE(9)), + gIVEI-BDS BIT STRING ( SIZE(4)), + ie-Extensions ProtocolExtensionContainer { { BDS-Ionospheric-Grid-Information-ExtIEs } } OPTIONAL, + ... +} + +BDS-Ionospheric-Grid-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +DBDS-Correction-Information ::= SEQUENCE { + bDS-Reference-Time BDS-Reference-Time, + dBDS-Information DBDS-Information, + ie-Extensions ProtocolExtensionContainer { { DBDS-Correction-Information-ExtIEs } } OPTIONAL, + ... +} + +DBDS-Correction-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +DBDS-Information ::= SEQUENCE(SIZE(1..maxSgnType)) OF SEQUENCE { + dBDS-Signal-ID GANSSID OPTIONAL, + dGANSS-Signal-Information DGANSS-Signal-Information, + ie-Extensions ProtocolExtensionContainer { { DBDS-Information-ExtIEs } } OPTIONAL, + ... +} + +DBDS-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + +DGANSS-Signal-Information ::= SEQUENCE(SIZE(1.. maxGANSSSat)) OF SEQUENCE { + sat-ID-BDS INTEGER(0..63), + uDREI-BDS INTEGER(0..15), + rURAI-BDS INTEGER(0..15), + delta-t-BDS BIT STRING (SIZE (13)), + ie-Extensions ProtocolExtensionContainer { { DGANSS-Signal-Information-ExtIEs } } OPTIONAL, + ... +} + +DGANSS-Signal-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } @@ -1457,9 +1713,9 @@ GanssCodePhaseAmbiguityExt-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { GANSS-Ionospheric-Model ::= SEQUENCE { - alpha-zero-ionos BIT STRING (SIZE (12)), - alpha-one-ionos BIT STRING (SIZE (12)), - alpha-two-ionos BIT STRING (SIZE (12)), + alpha-zero-ionos BIT STRING (SIZE (11)), + alpha-one-ionos BIT STRING (SIZE (11)), + alpha-two-ionos BIT STRING (SIZE (14)), gANSS-IonosphereRegionalStormFlags GANSS-IonosphereRegionalStormFlags OPTIONAL, ie-Extensions ProtocolExtensionContainer { { GANSS-Ionospheric-Model-ExtIEs } } OPTIONAL, ... @@ -1484,8 +1740,8 @@ GANSS-IonosphereRegionalStormFlags-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { } GANSS-KeplerianParametersAlm ::= SEQUENCE { - t-oa INTEGER(0..255), - iod-a INTEGER(0..3), + t-oa INTEGER(0..1023), + iod-a INTEGER(0..15), gANSS-SatelliteInformationKP GANSS-SatelliteInformationKP, ie-Extensions ProtocolExtensionContainer { { GANSS-KeplerianParametersAlm-ExtIEs } } OPTIONAL, ... @@ -1617,6 +1873,7 @@ GANSS-ReferenceMeasurementInfo ::= SEQUENCE { } GANSS-ReferenceMeasurementInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + {ID id-GANSS-Confidence CRITICALITY ignore EXTENSION Confidence PRESENCE optional}, ... } @@ -1652,10 +1909,11 @@ GANSS-ReferenceTimeOnly-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { GANSS-SatelliteClockModelItem ::= SEQUENCE { t-oc BIT STRING (SIZE(14)), - a-i2 BIT STRING (SIZE(12)), - a-i1 BIT STRING (SIZE(18)), - a-i0 BIT STRING (SIZE(28)), + a-i2 BIT STRING (SIZE(6)), + a-i1 BIT STRING (SIZE(21)), + a-i0 BIT STRING (SIZE(31)), t-gd BIT STRING (SIZE(10)) OPTIONAL, + sisa BIT STRING (SIZE(8)), model-id INTEGER(0..3) OPTIONAL, ie-Extensions ProtocolExtensionContainer { { GANSS-SatelliteClockModelItem-ExtIEs } } OPTIONAL, ... @@ -1680,6 +1938,7 @@ GANSS-SatelliteInformationItem ::= SEQUENCE { } GANSS-SatelliteInformationItem-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + {ID id-GANSS-ExtraDopplerExtension CRITICALITY ignore EXTENSION GANSS-ExtraDopplerExtension PRESENCE optional}, ... } @@ -1690,13 +1949,14 @@ GANSS-SatelliteInformationKPItem ::= SEQUENCE { ganss-e-alm BIT STRING (SIZE (11)), ganss-delta-I-alm BIT STRING (SIZE (11)), ganss-omegadot-alm BIT STRING (SIZE (11)), - ganss-svhealth-alm BIT STRING (SIZE (4)), - ganss-delta-a-sqrt-alm BIT STRING (SIZE (17)), + ganss-svStatusINAV-alm BIT STRING (SIZE (4)), + ganss-svStatusFNAV-alm BIT STRING (SIZE (2)) OPTIONAL, + ganss-delta-a-sqrt-alm BIT STRING (SIZE (13)), ganss-omegazero-alm BIT STRING (SIZE (16)), ganss-m-zero-alm BIT STRING (SIZE (16)), ganss-omega-alm BIT STRING (SIZE (16)), - ganss-af-zero-alm BIT STRING (SIZE (14)), - ganss-af-one-alm BIT STRING (SIZE (11)), + ganss-af-zero-alm BIT STRING (SIZE (16)), + ganss-af-one-alm BIT STRING (SIZE (13)), ie-Extensions ProtocolExtensionContainer { { GANSS-SatelliteInformationKPItem-ExtIEs } } OPTIONAL, ... } @@ -1830,7 +2090,7 @@ Ganss-Sat-Info-AddNavList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { GANSS-Sat-Info-Nav ::= SEQUENCE (SIZE(1..maxGANSSSat)) OF SEQUENCE { satId INTEGER(0..63), - svHealth BIT STRING (SIZE(5)), + svHealth BIT STRING (SIZE(9)), iod BIT STRING (SIZE(10)), ganssClockModel GANSS-Clock-Model, ganssOrbitModel GANSS-Orbit-Model, @@ -1868,7 +2128,7 @@ GANSS-Time-Model ::= SEQUENCE { ganss-t-a0 INTEGER(-2147483648..2147483647), ganss-t-a1 INTEGER(-8388608..8388607) OPTIONAL, ganss-t-a2 INTEGER(-64..63) OPTIONAL, - gnss-to-id ENUMERATED{gps,...,galileo,qzss,glonass}, + gnss-to-id ENUMERATED{gps,...,galileo,qzss,glonass,bds}, ganss-wk-number INTEGER(0..8191) OPTIONAL, ie-Extensions ProtocolExtensionContainer { { GANSS-Time-Model-ExtIEs } } OPTIONAL, ... @@ -2035,7 +2295,7 @@ NavModel-NAVKeplerianSet-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { } NavModel-SBASecef ::= SEQUENCE { - -- the following IE shall be present if 'SBASclockModel' in 'GANSS-AddClockModels' is not included in 'Ganss-Sat-Info-AddNavList' + -- the following IE shall be present if ‘SBASclockModel’ in ‘GANSS-AddClockModels’ is not included in ‘Ganss-Sat-Info-AddNavList’ sbasTo BIT STRING (SIZE (13)) OPTIONAL, sbasAccuracy BIT STRING (SIZE (4)), sbasXg BIT STRING (SIZE (30)), @@ -2055,6 +2315,33 @@ NavModel-SBASecef-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +NavModel-BDSKeplerianSet ::= SEQUENCE { + uRAIndex-BDS BIT STRING (SIZE (4)), + tOA-BDS BIT STRING (SIZE (17)), + a1-2-BDS BIT STRING (SIZE (32)), + e-BDS BIT STRING (SIZE (32)), + oMG-BDS BIT STRING (SIZE (32)), + dLTn-BDS BIT STRING (SIZE (16)), + m0-BDS BIT STRING (SIZE (32)), + oMG0-BDS BIT STRING (SIZE (32)), + oMGdot-BDS BIT STRING (SIZE (24)), + i0-BDS BIT STRING (SIZE (32)), + iDOT-BDS BIT STRING (SIZE (14)), + cuc-BDS BIT STRING (SIZE (18)), + cus-BDS BIT STRING (SIZE (18)), + crc-BDS BIT STRING (SIZE (18)), + crs-BDS BIT STRING (SIZE (18)), + cic-BDS BIT STRING (SIZE (18)), + cis-BDS BIT STRING (SIZE (18)), + aODE-BDS BIT STRING (SIZE (5)), + ie-Extensions ProtocolExtensionContainer { { NavModel-BDSKeplerianSet-ExtIEs } } OPTIONAL, + ... +} + +NavModel-BDSKeplerianSet-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + SBASclockModel ::= SEQUENCE { sbasTo BIT STRING (SIZE (13)), sbasAgfo BIT STRING (SIZE (12)), @@ -2067,6 +2354,21 @@ SBASclockModel-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +BDSClockModel ::= SEQUENCE { + toc-BDS BIT STRING (SIZE (17) ), + a0-BDS BIT STRING (SIZE (24) ), + a1-BDS BIT STRING (SIZE (22) ), + a2-BDS BIT STRING (SIZE (11) ), + tGD1-BDS BIT STRING (SIZE (10) ), + aODC-BDS BIT STRING (SIZE (5) ), + ie-Extensions ProtocolExtensionContainer { { BDSClockModel-ExtIEs } } OPTIONAL, + ... +} + +BDSClockModel-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + UTCmodelSet1 ::= SEQUENCE { utcA0 BIT STRING (SIZE(16)), utcA1 BIT STRING (SIZE(13)), @@ -2116,6 +2418,23 @@ UTCmodelSet3-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +UTCmodelSet4 ::= SEQUENCE { + utca0-BDS BIT STRING (SIZE(32)), + utca1-BDS BIT STRING (SIZE(24)), + utcDeltatLS-BDS BIT STRING (SIZE(8)), + utcWNt BIT STRING (SIZE(8)), + utcDeltaTls BIT STRING (SIZE(8)), + utcWNlsf-BDS BIT STRING (SIZE(8)), + utcDN-BDS BIT STRING (SIZE(8)), + utcDeltaTlsf-BDS BIT STRING (SIZE(8)), + ie-Extensions ProtocolExtensionContainer { { UTCmodelSet4-ExtIEs } } OPTIONAL, + ... +} + +UTCmodelSet4-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + UTRAN-GANSSReferenceTimeDL ::= SEQUENCE { utran-GANSSTimingOfCellFrames INTEGER(0..3999999), uC-ID UC-ID OPTIONAL, @@ -2428,7 +2747,7 @@ UTRAN-GPS-DriftRate ::= ENUMERATED { utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1, utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10, utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50, - ...} + ...} -- ************************************************************** -- @@ -2575,11 +2894,25 @@ GanssReqGenericData ::= SEQUENCE { ...} GanssReqGenericData-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - {ID id-ganssAddNavigationModel-req CRITICALITY ignore EXTENSION GANSS-AddNavigationModel-Req PRESENCE optional}| - {ID id-ganssAddUTCModel-req CRITICALITY ignore EXTENSION GANSS-AddUTCModel-Req PRESENCE optional}| - {ID id-ganssAuxInfo-req CRITICALITY ignore EXTENSION GANSS-AuxInfo-req PRESENCE optional}| - {ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional}| - {ID id-GANSS-AddADchoices CRITICALITY ignore EXTENSION GANSS-AddADchoices PRESENCE optional}, + {ID id-ganssAddNavigationModel-req CRITICALITY ignore EXTENSION GANSS-AddNavigationModel-Req PRESENCE optional}| + {ID id-ganssAddUTCModel-req CRITICALITY ignore EXTENSION GANSS-AddUTCModel-Req PRESENCE optional}| + {ID id-ganssAuxInfo-req CRITICALITY ignore EXTENSION GANSS-AuxInfo-req PRESENCE optional}| + {ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional}| + {ID id-GANSS-AddADchoices CRITICALITY ignore EXTENSION GANSS-AddADchoices PRESENCE optional}| + {ID id-BDSIonosphericGridModel CRITICALITY ignore EXTENSION BDSIonosphericGridModel PRESENCE optional}| + {ID id-DBDSCorrection CRITICALITY ignore EXTENSION DBDSCorrection PRESENCE optional}, + ... +} + +BDSIonosphericGridModel ::= BOOLEAN + +DBDSCorrection ::= SEQUENCE { + dGANSSSignalBDS BIT STRING (SIZE (8)), + iE-Extensions ProtocolExtensionContainer { { DBDSCorrection-ExtIEs } } OPTIONAL, + ... +} + +DBDSCorrection-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } @@ -2771,8 +3104,10 @@ GANSSGenericDataReq ::= SEQUENCE { ganss-AddNavModelsReq AddNavigationModelsGANSS OPTIONAL, ganss-AddUtcModelsReq GANSS-AddUtcModelsReq OPTIONAL, ganss-AuxInfoReq GANSS-AuxInfoReq OPTIONAL, - -- the following IE shall be present if GANSSID is '0' (SBAS) - ganss-SBAS-ID GANSS-SBAS-ID OPTIONAL + -- the following IE shall be present if GANSSID is ‘0’ (SBAS) + ganss-SBAS-ID GANSS-SBAS-ID OPTIONAL, + dBDS-Corrections DBDS-Corrections OPTIONAL, + bDS-Ionospheric-Grid-Model-Request BDS-Ionospheric-Grid-Model-Request OPTIONAL } AddNavigationModelsGANSS ::= SEQUENCE { @@ -2801,6 +3136,22 @@ AddSatelliteRelatedDataGANSS-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { ... } +BDS-Ionospheric-Grid-Model-Request ::= ENUMERATED { + requested, + ... +} + +DBDS-Corrections ::= SEQUENCE { + transmissionGanssTimeIndicator TransmissionGanssTimeIndicator OPTIONAL, + dGANSS-Signal BIT STRING( SIZE (8)), + iE-Extensions ProtocolExtensionContainer { { DBDS-Corrections-ExtIEs } } OPTIONAL, + ... +} + +DBDS-Corrections-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { + ... +} + GANSS-AddUtcModelsReq ::= SEQUENCE { transmissionGanssTimeIndicator TransmissionGanssTimeIndicator OPTIONAL, iE-Extensions ProtocolExtensionContainer { { GANSS-AddUtcModelsReq-ExtIEs} } OPTIONAL, @@ -3329,13 +3680,17 @@ PositioningMethod ::= SEQUENCE { PositioningMethod-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { --- The following IE shall be present if the Selected Position Method IE value is set to "GNSS" or "OTDOA or GNSS" - { ID id-GNSS-PositioningMethod CRITICALITY ignore EXTENSION GNSS-PositioningMethod PRESENCE conditional }, +-- The following IE shall be present if the Selected Position Method IE value is set to "GNSS" or “OTDOA or GNSS” + { ID id-GNSS-PositioningMethod CRITICALITY ignore EXTENSION GNSS-PositioningMethod PRESENCE conditional}| +-- This IE shall be present if the Selected Position Method IE value is set to “GPS and AddPos” or “OTDOA or GPS and AddPos” + { ID id-Additional-PositioningMethod CRITICALITY ignore EXTENSION Additional-PositioningMethod PRESENCE conditional}, ... } GNSS-PositioningMethod ::= BIT STRING (SIZE(9)) +Additional-PositioningMethod ::= BIT STRING (SIZE(8)) + SelectedPositionMethod ::= ENUMERATED { oTDOA, gPS, @@ -3344,7 +3699,9 @@ SelectedPositionMethod ::= ENUMERATED { uTDOA, ..., gNSS, - oTDOA-or-GNSS + oTDOA-or-GNSS, + gPS-and-AddPos, + oTDOA-or-GPS-and-AddPos } -- ************************************************************** @@ -3500,7 +3857,8 @@ UE-PositioningCapability ::= SEQUENCE { } UE-PositioningCapability-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - { ID id-NetworkAssistedGANSSSuport CRITICALITY ignore EXTENSION NetworkAssistedGANSSSupport PRESENCE optional }, + { ID id-NetworkAssistedGANSSSuport CRITICALITY ignore EXTENSION NetworkAssistedGANSSSupport PRESENCE optional}| + { ID id-AddPosSupport CRITICALITY ignore EXTENSION AddPosSupport PRESENCE optional}, ... } @@ -3519,8 +3877,27 @@ NetworkAssistedGANSSSupport ::= SEQUENCE (SIZE (1..maxGANSS)) OF SEQUENCE { ... } +AddPosSupport ::= SEQUENCE (SIZE (1..maxAddPos)) OF AddPosSupport-Element + +AddPosSupport-Element ::= SEQUENCE { + addPosID ENUMERATED { + barometricPressure, + wLAN, + bluetooth, + mBS, + ... + }, + addPosMode ENUMERATED { + standalone, + ue-assisted, + both, + ... + }, + ... +} + NetworkAssistedGANSSSuport-ExtIEs PCAP-PROTOCOL-EXTENSION ::= { - -- the following IE shall be present if 'GANSSID' in 'NetworkAssistedGANSSSupport' is '0' (SBAS) + -- the following IE shall be present if ‘GANSSID’ in ‘NetworkAssistedGANSSSupport’ is ‘0’ (SBAS) { ID id-GANSS-SBAS-IDs CRITICALITY ignore EXTENSION GANSS-SBAS-IDs PRESENCE optional }| { ID id-GANSS-Signal-IDs CRITICALITY ignore EXTENSION GANSS-Signal-IDs PRESENCE optional }| { ID id-supportGANSSNonNativeADchoices CRITICALITY ignore EXTENSION SupportGANSSNonNativeADchoices PRESENCE optional }, @@ -3858,6 +4235,7 @@ SFN-SFN-Drift ::= ENUMERATED { FineSFNSFN ::= INTEGER (0..15) -- Range 0..0.9375 step size 0.0625 + -- ************************************************************** -- -- Vertical Accuracy Code @@ -3939,7 +4317,7 @@ UTDOA-CELLDCH ::= SEQUENCE { compressedModeAssistanceData Compressed-Mode-Assistance-Data OPTIONAL, dCH-Information DCH-Information OPTIONAL, e-DPCH-Information E-DPCH-Information OPTIONAL, - iE-Extensions ProtocolExtensionContainer { { UTDOA-CELLDCH-ExtIEs} } OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UTDOA-CELLDCH-ExtIEs} } OPTIONAL, ... } @@ -4101,7 +4479,7 @@ TrChInfoList ::= SEQUENCE (SIZE(1..maxTrCH)) OF UL-TrCHInfo ::= SEQUENCE { uL-TrCHtype UL-TrCHType, tfs TransportFormatSet, - iE-Extensions ProtocolExtensionContainer { { UL-TrCHInfo-ExtIEs} } OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UL-TrCHInfo-ExtIEs} } OPTIONAL, ... } @@ -4566,7 +4944,7 @@ UschParameters ::= SEQUENCE { uL-Timeslot-Information UL-Timeslot-Information, tFCS TFCS, trChInfo TrChInfoList, - iE-Extensions ProtocolExtensionContainer { { UschParameters-ExtIEs} } OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UschParameters-ExtIEs} } OPTIONAL, ... } diff --git a/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn b/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn index a9d5b2c32b..dc759c404b 100644 --- a/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn +++ b/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04) -- --9.3.3 PDU Definitions -- ************************************************************** @@ -9,10 +9,10 @@ -- ************************************************************** PCAP-PDU-Contents { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) umts-Access (20) modules (3) pcap(4) version1 (1) pcap-PDU-Contents (1) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -39,8 +39,8 @@ IMPORTS HorizontalAccuracyCode, VerticalAccuracyCode, RequestType, - UE-PositioningCapability, - UC-ID, + UE-PositioningCapability, + UC-ID, ResponseTime, PositioningPriority, ClientType, @@ -71,7 +71,9 @@ IMPORTS OTDOA-ReferenceCellInfoSAS-centric, CellId-IRATMeasuredResultsSets, IMSI, - IMEI + IMEI, + AddPos-MeasuredResults + FROM PCAP-IEs @@ -110,7 +112,7 @@ FROM PCAP-Containers id-HorizontalAccuracyCode, id-VerticalAccuracyCode, id-RequestType, - id-UE-PositioningCapability, + id-UE-PositioningCapability, id-UC-id, id-ResponseTime, id-PositioningPriority, @@ -143,14 +145,15 @@ FROM PCAP-Containers id-OTDOA-ReferenceCellInfo, id-CellId-IRATMeasuredResultsSets, id-IMSI, - id-IMEI + id-IMEI, + id-AddPos-MeasuredResults FROM PCAP-Constants; -- ************************************************************** -- --- POSITION CALCULATION REQUEST +-- Position Calculation Request -- -- ************************************************************** @@ -184,7 +187,7 @@ PositionCalculationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** -- --- POSITION CALCULATION RESPONSE +-- Position Calculation Response -- -- ************************************************************** @@ -208,7 +211,7 @@ PositionCalculationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** -- --- POSITION CALCULATION FAILURE +-- Position Calculation Failure -- -- ************************************************************** @@ -364,8 +367,8 @@ InformationExchangeInitiationFailure-Extensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionInitiationRequest ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {PositionInitiationRequestIEs} }, - protocolExtensions ProtocolExtensionContainer { {PositionInitiationRequestExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {PositionInitiationRequestIEs} }, + protocolExtensions ProtocolExtensionContainer { {PositionInitiationRequestExtensions} } OPTIONAL, ... } @@ -444,8 +447,8 @@ PositionInitiationFailureExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionActivationRequest ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {PositionActivationRequestIEs} }, - protocolExtensions ProtocolExtensionContainer { {PositionActivationRequestExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {PositionActivationRequestIEs} }, + protocolExtensions ProtocolExtensionContainer { {PositionActivationRequestExtensions} } OPTIONAL, ... } @@ -460,7 +463,7 @@ PositionActivationRequestIEs PCAP-PROTOCOL-IES ::= { ... } -PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= { +PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= { { ID id-IncludeVelocity CRITICALITY ignore EXTENSION IncludeVelocity PRESENCE optional } | { ID id-AmountOfReporting CRITICALITY ignore EXTENSION AmountOfReporting PRESENCE optional } | { ID id-CellIDPositioning CRITICALITY ignore EXTENSION CellIDPositioning PRESENCE optional }| @@ -472,18 +475,18 @@ PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** -- -- POSITION ACTIVATION RESPONSE --- +-- -- ************************************************************** PositionActivationResponse ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {PositionActivationResponseIEs} }, - protocolExtensions ProtocolExtensionContainer { {PositionActivationResponseExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {PositionActivationResponseIEs} }, + protocolExtensions ProtocolExtensionContainer { {PositionActivationResponseExtensions} } OPTIONAL, ... } PositionActivationResponseIEs PCAP-PROTOCOL-IES ::= { { ID id-UE-PositionEstimateInfo CRITICALITY ignore TYPE UE-PositionEstimateInfo PRESENCE optional } | - { ID id-GPS-MeasuredResultsList CRITICALITY reject TYPE MeasuredResultsList PRESENCE optional } | + { ID id-GPS-MeasuredResultsList CRITICALITY reject TYPE MeasuredResultsList PRESENCE optional } | { ID id-CellId-MeasuredResultsSets CRITICALITY reject TYPE CellId-MeasuredResultsSets PRESENCE optional } | { ID id-OTDOA-MeasuredResultsSets CRITICALITY reject TYPE OTDOA-MeasuredResultsSets PRESENCE optional } | { ID id-UTDOA-Group CRITICALITY reject TYPE UTDOA-Group PRESENCE optional }, @@ -491,13 +494,14 @@ PositionActivationResponseIEs PCAP-PROTOCOL-IES ::= { } PositionActivationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= { - { ID id-VelocityEstimate CRITICALITY ignore EXTENSION VelocityEstimate PRESENCE optional } | - { ID id-MeasInstructionsUsed CRITICALITY ignore EXTENSION MeasInstructionsUsed PRESENCE optional } | - { ID id-GANSS-MeasuredResultsList CRITICALITY reject EXTENSION GANSS-MeasuredResultsList PRESENCE optional } | - { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional } | - { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional } | - { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional } | - { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional }, + { ID id-VelocityEstimate CRITICALITY ignore EXTENSION VelocityEstimate PRESENCE optional}| + { ID id-MeasInstructionsUsed CRITICALITY ignore EXTENSION MeasInstructionsUsed PRESENCE optional}| + { ID id-GANSS-MeasuredResultsList CRITICALITY reject EXTENSION GANSS-MeasuredResultsList PRESENCE optional}| + { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional}| + { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional}| + { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional}| + { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional}| + { ID id-AddPos-MeasuredResults CRITICALITY reject EXTENSION AddPos-MeasuredResults PRESENCE optional}, ... } @@ -509,8 +513,8 @@ PositionActivationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionActivationFailure ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {PositionActivationFailureIEs} }, - protocolExtensions ProtocolExtensionContainer { {PositionActivationFailureExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {PositionActivationFailureIEs} }, + protocolExtensions ProtocolExtensionContainer { {PositionActivationFailureExtensions} } OPTIONAL, ... } @@ -611,7 +615,7 @@ InformationExchangeFailureIndication-Extensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** -- --- ERROR INDICATION +-- Error Indication -- -- ************************************************************** @@ -638,8 +642,8 @@ ErrorIndicationExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionParameterModification ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {PositionParameterModificationIEs} }, - protocolExtensions ProtocolExtensionContainer { {PositionParameterModificationExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {PositionParameterModificationIEs} }, + protocolExtensions ProtocolExtensionContainer { {PositionParameterModificationExtensions} } OPTIONAL, ... } @@ -661,7 +665,7 @@ PositionParameterModificationExtensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PrivateMessage ::= SEQUENCE { - privateIEs PrivateIE-Container {{PrivateMessage-IEs}}, + privateIEs PrivateIE-Container {{PrivateMessage-IEs}}, ... } @@ -676,8 +680,8 @@ PrivateMessage-IEs PCAP-PRIVATE-IES ::= { -- ************************************************************** Abort ::= SEQUENCE { - protocolIEs ProtocolIE-Container { {AbortIEs} }, - protocolExtensions ProtocolExtensionContainer { {AbortExtensions} } OPTIONAL, + protocolIEs ProtocolIE-Container { {AbortIEs} }, + protocolExtensions ProtocolExtensionContainer { {AbortExtensions} } OPTIONAL, ... } @@ -686,7 +690,7 @@ AbortIEs PCAP-PROTOCOL-IES ::= { ... } -AbortExtensions PCAP-PROTOCOL-EXTENSION ::= { +AbortExtensions PCAP-PROTOCOL-EXTENSION ::= { ... } @@ -707,7 +711,7 @@ PositionPeriodicReport ::= SEQUENCE { PositionPeriodicReport-IEs PCAP-PROTOCOL-IES ::= { { ID id-UE-PositionEstimateInfo CRITICALITY ignore TYPE UE-PositionEstimateInfo PRESENCE optional } | { ID id-VelocityEstimate CRITICALITY ignore TYPE VelocityEstimate PRESENCE optional } | - { ID id-GPS-MeasuredResultsList CRITICALITY ignore TYPE MeasuredResultsList PRESENCE optional } | + { ID id-GPS-MeasuredResultsList CRITICALITY ignore TYPE MeasuredResultsList PRESENCE optional } | { ID id-CellId-MeasuredResultsSets CRITICALITY ignore TYPE CellId-MeasuredResultsSets PRESENCE optional } | { ID id-OTDOA-MeasuredResultsSets CRITICALITY ignore TYPE OTDOA-MeasuredResultsSets PRESENCE optional } | { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional } , @@ -715,11 +719,12 @@ PositionPeriodicReport-IEs PCAP-PROTOCOL-IES ::= { } PositionPeriodicReport-Extensions PCAP-PROTOCOL-EXTENSION ::= { - { ID id-GANSS-MeasuredResultsList CRITICALITY ignore EXTENSION GANSS-MeasuredResultsList PRESENCE optional } | - { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional } | - { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional } | - { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional } | - { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional }, + { ID id-GANSS-MeasuredResultsList CRITICALITY ignore EXTENSION GANSS-MeasuredResultsList PRESENCE optional}| + { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional}| + { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional}| + { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional}| + { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional}| + { ID id-AddPos-MeasuredResults CRITICALITY ignore EXTENSION AddPos-MeasuredResults PRESENCE optional}, ... } @@ -730,8 +735,8 @@ PositionPeriodicReport-Extensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionPeriodicResult ::= SEQUENCE { - protocolIEs ProtocolIE-Container {{PositionPeriodicResult-IEs}}, - protocolExtensions ProtocolExtensionContainer {{PositionPeriodicResult-Extensions}} OPTIONAL, + protocolIEs ProtocolIE-Container {{PositionPeriodicResult-IEs}}, + protocolExtensions ProtocolExtensionContainer {{PositionPeriodicResult-Extensions}} OPTIONAL, ... } @@ -755,8 +760,8 @@ PositionPeriodicResult-Extensions PCAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** PositionPeriodicTermination ::= SEQUENCE { - protocolIEs ProtocolIE-Container {{PositionPeriodicTermination-IEs}}, - protocolExtensions ProtocolExtensionContainer {{PositionPeriodicTermination-Extensions}} OPTIONAL, + protocolIEs ProtocolIE-Container {{PositionPeriodicTermination-IEs}}, + protocolExtensions ProtocolExtensionContainer {{PositionPeriodicTermination-Extensions}} OPTIONAL, ... } @@ -765,7 +770,7 @@ PositionPeriodicTermination-IEs PCAP-PROTOCOL-IES ::= { ... } -PositionPeriodicTermination-Extensions PCAP-PROTOCOL-EXTENSION ::= { +PositionPeriodicTermination-Extensions PCAP-PROTOCOL-EXTENSION ::= { ... } END diff --git a/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn b/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn index f67bdd2817..b9fb0c4af1 100644 --- a/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn +++ b/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn @@ -1,5 +1,5 @@ -- --- 3GPP TS 25.453 V11.0.0 (2012-09) +-- 3GPP TS 25.453 V17.0.0 (2022-04) -- -- 9.3.2 Elementary Procedure Definitions -- ************************************************************** @@ -8,11 +8,11 @@ -- -- ************************************************************** -PCAP-PDU-Descriptions { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +PCAP-PDU-Descriptions { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) umts-Access (20) modules (3) pcap(4) version1 (1) pcap-PDU-Descriptions (0)} -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN diff --git a/epan/dissectors/asn1/pcap/packet-pcap-template.c b/epan/dissectors/asn1/pcap/packet-pcap-template.c index 120e63fbf7..535423eafc 100644 --- a/epan/dissectors/asn1/pcap/packet-pcap-template.c +++ b/epan/dissectors/asn1/pcap/packet-pcap-template.c @@ -11,7 +11,7 @@ * * Based on the RANAP dissector * - * References: ETSI TS 125 453 V7.9.0 (2008-02) + * References: ETSI TS 125 453 V17.0.0 (2022-04) */ #include "config.h" diff --git a/epan/dissectors/asn1/pcap/pcap.cnf b/epan/dissectors/asn1/pcap/pcap.cnf index c5c99a0049..346471b0e8 100644 --- a/epan/dissectors/asn1/pcap/pcap.cnf +++ b/epan/dissectors/asn1/pcap/pcap.cnf @@ -274,6 +274,19 @@ id-requestedCellIDGERANMeasurements ProtocolIE-ID id-CellId-IRATMeasuredResultsSets ProtocolIE-ID id-IMSI ProtocolIE-ID id-IMEI ProtocolIE-ID +id-GANSS-alm-keplerianBDSAlmanac ProtocolIE-ID +id-BDS-Ionospheric-Grid-Model ProtocolIE-ID +id-DBDS-Correction-Information ProtocolIE-ID +id-BDSIonosphericGridModel ProtocolIE-ID +id-DBDSCorrection ProtocolIE-ID +id-Confidence ProtocolIE-ID +id-ExtraDopplerInfoExtension ProtocolIE-ID +id-GANSS-Confidence ProtocolIE-ID +id-GANSS-ExtraDopplerExtension ProtocolIE-ID +id-Additional-PositioningDataSet ProtocolIE-ID +id-Additional-PositioningMethod ProtocolIE-ID +id-AddPos-MeasuredResults ProtocolIE-ID +id-AddPosSupport ProtocolIE-ID #.END @@ -316,6 +329,7 @@ UE-PositionEstimateInfo N pcap.ies id-UE-PositionEstimateInfo OTDOA-MeasuredResultsSets N pcap.ies id-OTDOA-MeasuredResultsSets PeriodicPosCalcInfo N pcap.ies id-PeriodicPosCalcInfo PeriodicTerminationCause N pcap.ies id-PeriodicTerminationCause +GANSS-ALM-BDSKeplericanset N pcap.ies id-GANSS-alm-keplerianBDSAlmanac #PCAP-PROTOCOL-EXTENSION CellId-MeasuredResultsSets N pcap.extension id-CellId-MeasuredResultsSets @@ -396,7 +410,18 @@ RequestedCellIDGERANMeasurements N pcap.extension id-requestedCellIDGERANMeas CellId-IRATMeasuredResultsSets N pcap.extension id-CellId-IRATMeasuredResultsSets IMSI N pcap.extension id-IMSI IMEI N pcap.extension id-IMEI - +BDS-Ionospheric-Grid-Model N pcap.extension id-BDS-Ionospheric-Grid-Model +DBDS-Correction-Information N pcap.extension id-DBDS-Correction-Information +BDSIonosphericGridModel N pcap.extension id-BDSIonosphericGridModel +DBDSCorrection N pcap.extension id-DBDSCorrection +Confidence N pcap.extension id-Confidence +ExtraDopplerInfoExtension N pcap.extension id-ExtraDopplerInfoExtension +Confidence N pcap.extension id-GANSS-Confidence +GANSS-ExtraDopplerExtension N pcap.extension id-GANSS-ExtraDopplerExtension +Additional-PositioningDataSet N pcap.extension id-Additional-PositioningDataSet +Additional-PositioningMethod N pcap.extension id-Additional-PositioningMethod +AddPos-MeasuredResults N pcap.extension id-AddPos-MeasuredResults +AddPosSupport N pcap.extension id-AddPosSupport #PCAP-ELEMENTARY-PROCEDURE diff --git a/epan/dissectors/packet-pcap.c b/epan/dissectors/packet-pcap.c index 1fa92c6c64..e87c967e1d 100644 --- a/epan/dissectors/packet-pcap.c +++ b/epan/dissectors/packet-pcap.c @@ -19,7 +19,7 @@ * * Based on the RANAP dissector * - * References: ETSI TS 125 453 V7.9.0 (2008-02) + * References: ETSI TS 125 453 V17.0.0 (2022-04) */ #include "config.h" @@ -88,6 +88,11 @@ void proto_reg_handoff_pcap(void); #define maxGANSS_1 7 #define maxNrOfIRATMeasurements 16 #define maxReportedGERANCells 6 +#define maxIonGridInfo 320 +#define maxAddPos 8 +#define maxBeacons 64 +#define maxBTs 32 +#define maxWLANs 64 #define maxNrOfULTSs 15 #define maxNrOfDPCHs 240 @@ -231,8 +236,23 @@ typedef enum _ProtocolIE_ID_enum { id_ganss_Delta_T = 123, id_requestedCellIDGERANMeasurements = 124, id_CellId_IRATMeasuredResultsSets = 125, - id_IMSI = 126, - id_IMEI = 127 + id_Unknown_126 = 126, + id_Unknown_127 = 127, + id_IMSI = 128, + id_IMEI = 129, + id_GANSS_alm_keplerianBDSAlmanac = 130, + id_BDS_Ionospheric_Grid_Model = 131, + id_DBDS_Correction_Information = 132, + id_BDSIonosphericGridModel = 133, + id_DBDSCorrection = 134, + id_Confidence = 135, + id_ExtraDopplerInfoExtension = 136, + id_GANSS_Confidence = 137, + id_GANSS_ExtraDopplerExtension = 138, + id_Additional_PositioningDataSet = 139, + id_Additional_PositioningMethod = 140, + id_AddPos_MeasuredResults = 141, + id_AddPosSupport = 142 } ProtocolIE_ID_enum; /*--- End of included file: packet-pcap-val.h ---*/ @@ -247,6 +267,7 @@ static int proto_pcap = -1; /*--- Included file: packet-pcap-hf.c ---*/ #line 1 "./asn1/pcap/packet-pcap-hf.c" static int hf_pcap_AccuracyFulfilmentIndicator_PDU = -1; /* AccuracyFulfilmentIndicator */ +static int hf_pcap_AddPos_MeasuredResults_PDU = -1; /* AddPos_MeasuredResults */ static int hf_pcap_Cause_PDU = -1; /* Cause */ static int hf_pcap_CellId_MeasuredResultsSets_PDU = -1; /* CellId_MeasuredResultsSets */ static int hf_pcap_RoundTripTimeInfoWithType1_PDU = -1; /* RoundTripTimeInfoWithType1 */ @@ -269,11 +290,15 @@ static int hf_pcap_GANSS_Reference_Time_Only_PDU = -1; /* GANSS_Reference_Time_ static int hf_pcap_PositionDataUEbased_PDU = -1; /* PositionDataUEbased */ static int hf_pcap_PositionData_PDU = -1; /* PositionData */ static int hf_pcap_GANSS_PositioningDataSet_PDU = -1; /* GANSS_PositioningDataSet */ +static int hf_pcap_Additional_PositioningDataSet_PDU = -1; /* Additional_PositioningDataSet */ +static int hf_pcap_ExtraDopplerInfoExtension_PDU = -1; /* ExtraDopplerInfoExtension */ static int hf_pcap_AzimuthAndElevationLSB_PDU = -1; /* AzimuthAndElevationLSB */ +static int hf_pcap_Confidence_PDU = -1; /* Confidence */ static int hf_pcap_GANSS_Additional_Ionospheric_Model_PDU = -1; /* GANSS_Additional_Ionospheric_Model */ static int hf_pcap_GANSS_Additional_Navigation_Models_PDU = -1; /* GANSS_Additional_Navigation_Models */ static int hf_pcap_GANSS_Additional_Time_Models_PDU = -1; /* GANSS_Additional_Time_Models */ static int hf_pcap_GANSS_Additional_UTC_Models_PDU = -1; /* GANSS_Additional_UTC_Models */ +static int hf_pcap_GANSS_ALM_BDSKeplericanset_PDU = -1; /* GANSS_ALM_BDSKeplericanset */ static int hf_pcap_GANSS_ALM_ECEFsbasAlmanacSet_PDU = -1; /* GANSS_ALM_ECEFsbasAlmanacSet */ static int hf_pcap_GANSS_ALM_GlonassAlmanacSet_PDU = -1; /* GANSS_ALM_GlonassAlmanacSet */ static int hf_pcap_GANSS_ALM_MidiAlmanacSet_PDU = -1; /* GANSS_ALM_MidiAlmanacSet */ @@ -282,7 +307,10 @@ static int hf_pcap_GANSS_ALM_ReducedKeplerianSet_PDU = -1; /* GANSS_ALM_Reduced static int hf_pcap_GANSS_Auxiliary_Information_PDU = -1; /* GANSS_Auxiliary_Information */ static int hf_pcap_GANSS_CommonAssistanceData_PDU = -1; /* GANSS_CommonAssistanceData */ static int hf_pcap_GANSS_Earth_Orientation_Parameters_PDU = -1; /* GANSS_Earth_Orientation_Parameters */ +static int hf_pcap_GANSS_ExtraDopplerExtension_PDU = -1; /* GANSS_ExtraDopplerExtension */ static int hf_pcap_GANSS_GenericAssistanceDataList_PDU = -1; /* GANSS_GenericAssistanceDataList */ +static int hf_pcap_BDS_Ionospheric_Grid_Model_PDU = -1; /* BDS_Ionospheric_Grid_Model */ +static int hf_pcap_DBDS_Correction_Information_PDU = -1; /* DBDS_Correction_Information */ static int hf_pcap_GanssCodePhaseAmbiguityExt_PDU = -1; /* GanssCodePhaseAmbiguityExt */ static int hf_pcap_GanssIntegerCodePhaseExt_PDU = -1; /* GanssIntegerCodePhaseExt */ static int hf_pcap_GANSS_MeasuredResultsList_PDU = -1; /* GANSS_MeasuredResultsList */ @@ -300,6 +328,8 @@ static int hf_pcap_AdditionalGPSAssistDataRequired_PDU = -1; /* AdditionalGPSAs static int hf_pcap_AdditionalGanssAssistDataRequired_PDU = -1; /* AdditionalGanssAssistDataRequired */ static int hf_pcap_GANSSReq_AddIonosphericModel_PDU = -1; /* GANSSReq_AddIonosphericModel */ static int hf_pcap_GANSSReq_EarthOrientPara_PDU = -1; /* GANSSReq_EarthOrientPara */ +static int hf_pcap_BDSIonosphericGridModel_PDU = -1; /* BDSIonosphericGridModel */ +static int hf_pcap_DBDSCorrection_PDU = -1; /* DBDSCorrection */ static int hf_pcap_GANSS_AddNavigationModel_Req_PDU = -1; /* GANSS_AddNavigationModel_Req */ static int hf_pcap_GANSS_AddUTCModel_Req_PDU = -1; /* GANSS_AddUTCModel_Req */ static int hf_pcap_GANSS_AuxInfo_req_PDU = -1; /* GANSS_AuxInfo_req */ @@ -323,6 +353,7 @@ static int hf_pcap_PeriodicLocationInfo_PDU = -1; /* PeriodicLocationInfo */ static int hf_pcap_PeriodicTerminationCause_PDU = -1; /* PeriodicTerminationCause */ static int hf_pcap_PositioningMethod_PDU = -1; /* PositioningMethod */ static int hf_pcap_GNSS_PositioningMethod_PDU = -1; /* GNSS_PositioningMethod */ +static int hf_pcap_Additional_PositioningMethod_PDU = -1; /* Additional_PositioningMethod */ static int hf_pcap_PositioningPriority_PDU = -1; /* PositioningPriority */ static int hf_pcap_RRCstateChange_PDU = -1; /* RRCstateChange */ static int hf_pcap_RequestType_PDU = -1; /* RequestType */ @@ -330,6 +361,7 @@ static int hf_pcap_ResponseTime_PDU = -1; /* ResponseTime */ static int hf_pcap_HorizontalAccuracyCode_PDU = -1; /* HorizontalAccuracyCode */ static int hf_pcap_UE_PositioningCapability_PDU = -1; /* UE_PositioningCapability */ static int hf_pcap_NetworkAssistedGANSSSupport_PDU = -1; /* NetworkAssistedGANSSSupport */ +static int hf_pcap_AddPosSupport_PDU = -1; /* AddPosSupport */ static int hf_pcap_GANSS_SBAS_IDs_PDU = -1; /* GANSS_SBAS_IDs */ static int hf_pcap_GANSS_Signal_IDs_PDU = -1; /* GANSS_Signal_IDs */ static int hf_pcap_SupportGANSSNonNativeADchoices_PDU = -1; /* SupportGANSSNonNativeADchoices */ @@ -389,10 +421,37 @@ static int hf_pcap_extensionValue = -1; /* T_extensionValue */ static int hf_pcap_PrivateIE_Container_item = -1; /* PrivateIE_Field */ static int hf_pcap_private_id = -1; /* PrivateIE_ID */ static int hf_pcap_private_value = -1; /* T_private_value */ +static int hf_pcap_AddPos_MeasuredResults_item = -1; /* AddPos_MeasuredResults_Element */ +static int hf_pcap_timestamp = -1; /* UTCTime */ +static int hf_pcap_type = -1; /* T_type */ +static int hf_pcap_barometricPressure = -1; /* T_barometricPressure */ +static int hf_pcap_uncompensatedBarometricPressure = -1; /* BaroMeasurement */ +static int hf_pcap_iE_Extensions = -1; /* ProtocolExtensionContainer */ +static int hf_pcap_wlan = -1; /* T_wlan */ +static int hf_pcap_wlanMeasurementList = -1; /* WLANMeasurementList */ +static int hf_pcap_bt = -1; /* T_bt */ +static int hf_pcap_btMeasurementList = -1; /* BTMeasurementList */ +static int hf_pcap_mbs = -1; /* T_mbs */ +static int hf_pcap_mbsMeasurementList = -1; /* MBSMeasurementList */ +static int hf_pcap_WLANMeasurementList_item = -1; /* WLANMeasurementList_Element */ +static int hf_pcap_wlanBSSID = -1; /* OCTET_STRING_SIZE_6 */ +static int hf_pcap_wlanSSID = -1; /* OCTET_STRING_SIZE_1_32 */ +static int hf_pcap_wlanRSSI = -1; /* INTEGER_M127_128 */ +static int hf_pcap_wlanRTTvalue = -1; /* INTEGER_0_16777215 */ +static int hf_pcap_wlanRTTunits = -1; /* T_wlanRTTunits */ +static int hf_pcap_wlanRTTaccuracy = -1; /* INTEGER_0_255 */ +static int hf_pcap_wlanAPChannelFrequency = -1; /* INTEGER_0_256 */ +static int hf_pcap_wlanServingFlag = -1; /* BOOLEAN */ +static int hf_pcap_BTMeasurementList_item = -1; /* BTMeasurementList_Element */ +static int hf_pcap_btADDR = -1; /* OCTET_STRING_SIZE_6 */ +static int hf_pcap_btRSSI = -1; /* INTEGER_M127_128 */ +static int hf_pcap_MBSMeasurementList_item = -1; /* MBSMeasurementList_Element */ +static int hf_pcap_transmitterID = -1; /* INTEGER_0_32767 */ +static int hf_pcap_codephase = -1; /* INTEGER_0_2097151 */ +static int hf_pcap_codephaseRMS = -1; /* INTEGER_0_63 */ static int hf_pcap_gpsAlmanacAndSatelliteHealth = -1; /* GPS_AlmanacAndSatelliteHealth */ static int hf_pcap_satMask = -1; /* BIT_STRING_SIZE_1_32 */ static int hf_pcap_lsbTOW = -1; /* BIT_STRING_SIZE_8 */ -static int hf_pcap_iE_Extensions = -1; /* ProtocolExtensionContainer */ static int hf_pcap_radioNetwork = -1; /* CauseRadioNetwork */ static int hf_pcap_transport = -1; /* CauseTransport */ static int hf_pcap_protocol = -1; /* CauseProtocol */ @@ -518,6 +577,7 @@ static int hf_pcap_positioningDataDiscriminator = -1; /* PositioningDataDiscrim static int hf_pcap_positioningDataSet = -1; /* PositioningDataSet */ static int hf_pcap_GANSS_PositioningDataSet_item = -1; /* GANSS_PositioningMethodAndUsage */ static int hf_pcap_PositioningDataSet_item = -1; /* PositioningMethodAndUsage */ +static int hf_pcap_Additional_PositioningDataSet_item = -1; /* Additional_PositioningMethodAndUsage */ static int hf_pcap_gps_TOW_1msec = -1; /* INTEGER_0_604799999 */ static int hf_pcap_satelliteInformationList = -1; /* AcquisitionSatInfoList */ static int hf_pcap_AcquisitionSatInfoList_item = -1; /* AcquisitionSatInfo */ @@ -530,6 +590,7 @@ static int hf_pcap_codePhaseSearchWindow = -1; /* CodePhaseSearchWindow */ static int hf_pcap_azimuthAndElevation = -1; /* AzimuthAndElevation */ static int hf_pcap_doppler1stOrder = -1; /* INTEGER_M42_21 */ static int hf_pcap_dopplerUncertainty = -1; /* DopplerUncertainty */ +static int hf_pcap_dopplerUncertaintyExtension = -1; /* DopplerUncertaintyExtension */ static int hf_pcap_azimuth = -1; /* INTEGER_0_31 */ static int hf_pcap_elevation = -1; /* INTEGER_0_7 */ static int hf_pcap_azimuthLSB = -1; /* INTEGER_0_15 */ @@ -572,10 +633,12 @@ static int hf_pcap_navClockModel = -1; /* NAVclockModel */ static int hf_pcap_cnavClockModel = -1; /* CNAVclockModel */ static int hf_pcap_glonassClockModel = -1; /* GLONASSclockModel */ static int hf_pcap_sbasClockModel = -1; /* SBASclockModel */ +static int hf_pcap_bDSClockModel = -1; /* BDSClockModel */ static int hf_pcap_navKeplerianSet = -1; /* NavModel_NAVKeplerianSet */ static int hf_pcap_cnavKeplerianSet = -1; /* NavModel_CNAVKeplerianSet */ static int hf_pcap_glonassECEF = -1; /* NavModel_GLONASSecef */ static int hf_pcap_sbasECEF = -1; /* NavModel_SBASecef */ +static int hf_pcap_bDSKeplerianSet = -1; /* NavModel_BDSKeplerianSet */ static int hf_pcap_dataID = -1; /* BIT_STRING_SIZE_2 */ static int hf_pcap_alpha_beta_parameters = -1; /* GPS_Ionospheric_Model */ static int hf_pcap_non_broadcastIndication = -1; /* T_non_broadcastIndication */ @@ -584,6 +647,21 @@ static int hf_pcap_GANSS_Additional_Time_Models_item = -1; /* GANSS_Time_Model static int hf_pcap_utcModel1 = -1; /* UTCmodelSet1 */ static int hf_pcap_utcModel2 = -1; /* UTCmodelSet2 */ static int hf_pcap_utcModel3 = -1; /* UTCmodelSet3 */ +static int hf_pcap_utcModel4 = -1; /* UTCmodelSet4 */ +static int hf_pcap_satellite_Information_BDS_KP_List = -1; /* Satellite_Information_BDS_KP_List */ +static int hf_pcap_Satellite_Information_BDS_KP_List_item = -1; /* Satellite_Information_BDS_KP_Item */ +static int hf_pcap_sVID_BDS = -1; /* INTEGER_0_63 */ +static int hf_pcap_tOA_BDS = -1; /* BIT_STRING_SIZE_8 */ +static int hf_pcap_a21_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_e_BDS = -1; /* BIT_STRING_SIZE_17 */ +static int hf_pcap_omg_lower_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_m0_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_omg_0_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_omg_upper_BDS = -1; /* BIT_STRING_SIZE_17 */ +static int hf_pcap_delta_i_BDS = -1; /* BIT_STRING_SIZE_16 */ +static int hf_pcap_a0_BDS = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_a1_BDS = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_hea_BDS = -1; /* BIT_STRING_SIZE_9 */ static int hf_pcap_sat_info_SBASecefList = -1; /* GANSS_SAT_Info_Almanac_SBASecefList */ static int hf_pcap_sat_info_GLOkpList = -1; /* GANSS_SAT_Info_Almanac_GLOkpList */ static int hf_pcap_t_oa = -1; /* INTEGER_0_255 */ @@ -617,6 +695,7 @@ static int hf_pcap_deltaUT1 = -1; /* BIT_STRING_SIZE_31 */ static int hf_pcap_deltaUT1dot = -1; /* BIT_STRING_SIZE_19 */ static int hf_pcap_dopplerFirstOrder = -1; /* INTEGER_M42_21 */ static int hf_pcap_dopplerUncertainty_01 = -1; /* T_dopplerUncertainty */ +static int hf_pcap_dopplerUncertaintyExtension_01 = -1; /* T_dopplerUncertaintyExtension */ static int hf_pcap_GANSS_GenericAssistanceDataList_item = -1; /* GANSSGenericAssistanceData */ static int hf_pcap_ganssId = -1; /* GANSSID */ static int hf_pcap_ganss_Real_Time_Integrity = -1; /* GANSS_Real_Time_Integrity */ @@ -627,6 +706,21 @@ static int hf_pcap_ganss_ReferenceMeasurementInfo = -1; /* GANSS_ReferenceMeasu static int hf_pcap_ganss_UTC_Model = -1; /* GANSS_UTC_Model */ static int hf_pcap_ganss_Time_Model = -1; /* GANSS_Time_Model */ static int hf_pcap_ganss_Navigation_Model = -1; /* GANSS_Navigation_Model */ +static int hf_pcap_bDS_Reference_Time = -1; /* BDS_Reference_Time */ +static int hf_pcap_bDS_Ionospheric_Grid_Information = -1; /* BDS_Ionospheric_Grid_Information */ +static int hf_pcap_BDS_Ionospheric_Grid_Information_item = -1; /* BDS_Ionospheric_Grid_Information_item */ +static int hf_pcap_iGP_number_BDS = -1; /* INTEGER_1_320 */ +static int hf_pcap_vertical_Delay_BDS = -1; /* BIT_STRING_SIZE_9 */ +static int hf_pcap_gIVEI_BDS = -1; /* BIT_STRING_SIZE_4 */ +static int hf_pcap_dBDS_Information = -1; /* DBDS_Information */ +static int hf_pcap_DBDS_Information_item = -1; /* DBDS_Information_item */ +static int hf_pcap_dBDS_Signal_ID = -1; /* GANSSID */ +static int hf_pcap_dGANSS_Signal_Information = -1; /* DGANSS_Signal_Information */ +static int hf_pcap_DGANSS_Signal_Information_item = -1; /* DGANSS_Signal_Information_item */ +static int hf_pcap_sat_ID_BDS = -1; /* INTEGER_0_63 */ +static int hf_pcap_uDREI_BDS = -1; /* INTEGER_0_15 */ +static int hf_pcap_rURAI_BDS = -1; /* INTEGER_0_15 */ +static int hf_pcap_delta_t_BDS = -1; /* BIT_STRING_SIZE_13 */ static int hf_pcap_GANSS_GenericMeasurementInfo_item = -1; /* GANSS_GenericMeasurementInfo_item */ static int hf_pcap_ganssMeasurementSignalList = -1; /* GANSSMeasurementSignalList */ static int hf_pcap_ganss_ID = -1; /* INTEGER_0_7 */ @@ -635,16 +729,17 @@ static int hf_pcap_ganssSignalId = -1; /* GANSS_SignalID */ static int hf_pcap_ganssCodePhaseAmbiguity = -1; /* INTEGER_0_31 */ static int hf_pcap_ganssMeasurementParameters = -1; /* GANSS_MeasurementParameters */ static int hf_pcap_ganssCodePhaseAmbiguity_ext = -1; /* INTEGER_32_127 */ -static int hf_pcap_alpha_zero_ionos = -1; /* BIT_STRING_SIZE_12 */ -static int hf_pcap_alpha_one_ionos = -1; /* BIT_STRING_SIZE_12 */ -static int hf_pcap_alpha_two_ionos = -1; /* BIT_STRING_SIZE_12 */ +static int hf_pcap_alpha_zero_ionos = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_alpha_one_ionos = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_alpha_two_ionos = -1; /* BIT_STRING_SIZE_14 */ static int hf_pcap_gANSS_IonosphereRegionalStormFlags = -1; /* GANSS_IonosphereRegionalStormFlags */ static int hf_pcap_storm_flag_one = -1; /* BOOLEAN */ static int hf_pcap_storm_flag_two = -1; /* BOOLEAN */ static int hf_pcap_storm_flag_three = -1; /* BOOLEAN */ static int hf_pcap_storm_flag_four = -1; /* BOOLEAN */ static int hf_pcap_storm_flag_five = -1; /* BOOLEAN */ -static int hf_pcap_iod_a = -1; /* INTEGER_0_3 */ +static int hf_pcap_t_oa_01 = -1; /* INTEGER_0_1023 */ +static int hf_pcap_iod_a = -1; /* INTEGER_0_15 */ static int hf_pcap_gANSS_SatelliteInformationKP = -1; /* GANSS_SatelliteInformationKP */ static int hf_pcap_toe_nav = -1; /* BIT_STRING_SIZE_14 */ static int hf_pcap_ganss_omega_nav = -1; /* BIT_STRING_SIZE_32 */ @@ -694,10 +789,11 @@ static int hf_pcap_gANSS_tod = -1; /* INTEGER_0_3599999 */ static int hf_pcap_gANSS_timeId = -1; /* GANSSID */ static int hf_pcap_gANSS_TimeUncertainty = -1; /* INTEGER_0_127 */ static int hf_pcap_t_oc = -1; /* BIT_STRING_SIZE_14 */ -static int hf_pcap_a_i2 = -1; /* BIT_STRING_SIZE_12 */ -static int hf_pcap_a_i1 = -1; /* BIT_STRING_SIZE_18 */ -static int hf_pcap_a_i0 = -1; /* BIT_STRING_SIZE_28 */ +static int hf_pcap_a_i2 = -1; /* BIT_STRING_SIZE_6 */ +static int hf_pcap_a_i1 = -1; /* BIT_STRING_SIZE_21 */ +static int hf_pcap_a_i0 = -1; /* BIT_STRING_SIZE_31 */ static int hf_pcap_t_gd = -1; /* BIT_STRING_SIZE_10 */ +static int hf_pcap_sisa = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_model_id = -1; /* INTEGER_0_3 */ static int hf_pcap_GANSS_SatelliteInformation_item = -1; /* GANSS_SatelliteInformationItem */ static int hf_pcap_ganssSatId = -1; /* INTEGER_0_63 */ @@ -711,13 +807,14 @@ static int hf_pcap_GANSS_SatelliteInformationKP_item = -1; /* GANSS_SatelliteIn static int hf_pcap_ganss_e_alm = -1; /* BIT_STRING_SIZE_11 */ static int hf_pcap_ganss_delta_I_alm = -1; /* BIT_STRING_SIZE_11 */ static int hf_pcap_ganss_omegadot_alm = -1; /* BIT_STRING_SIZE_11 */ -static int hf_pcap_ganss_svhealth_alm = -1; /* BIT_STRING_SIZE_4 */ -static int hf_pcap_ganss_delta_a_sqrt_alm = -1; /* BIT_STRING_SIZE_17 */ +static int hf_pcap_ganss_svStatusINAV_alm = -1; /* BIT_STRING_SIZE_4 */ +static int hf_pcap_ganss_svStatusFNAV_alm = -1; /* BIT_STRING_SIZE_2 */ +static int hf_pcap_ganss_delta_a_sqrt_alm = -1; /* BIT_STRING_SIZE_13 */ static int hf_pcap_ganss_omegazero_alm = -1; /* BIT_STRING_SIZE_16 */ static int hf_pcap_ganss_m_zero_alm = -1; /* BIT_STRING_SIZE_16 */ static int hf_pcap_ganss_omega_alm = -1; /* BIT_STRING_SIZE_16 */ -static int hf_pcap_ganss_af_zero_alm = -1; /* BIT_STRING_SIZE_14 */ -static int hf_pcap_ganss_af_one_alm = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_ganss_af_zero_alm = -1; /* BIT_STRING_SIZE_16 */ +static int hf_pcap_ganss_af_one_alm = -1; /* BIT_STRING_SIZE_13 */ static int hf_pcap_GANSS_SAT_Info_Almanac_GLOkpList_item = -1; /* GANSS_SAT_Info_Almanac_GLOkp */ static int hf_pcap_gloAlmNA = -1; /* BIT_STRING_SIZE_11 */ static int hf_pcap_gloAlmnA = -1; /* BIT_STRING_SIZE_5 */ @@ -779,7 +876,7 @@ static int hf_pcap_iod = -1; /* BIT_STRING_SIZE_11 */ static int hf_pcap_ganssAddClockModels = -1; /* GANSS_AddClockModels */ static int hf_pcap_ganssAddOrbitModels = -1; /* GANSS_AddOrbitModels */ static int hf_pcap_GANSS_Sat_Info_Nav_item = -1; /* GANSS_Sat_Info_Nav_item */ -static int hf_pcap_svHealth_01 = -1; /* BIT_STRING_SIZE_5 */ +static int hf_pcap_svHealth_01 = -1; /* BIT_STRING_SIZE_9 */ static int hf_pcap_iod_01 = -1; /* BIT_STRING_SIZE_10 */ static int hf_pcap_ganssClockModel = -1; /* GANSS_Clock_Model */ static int hf_pcap_ganssOrbitModel = -1; /* GANSS_Orbit_Model */ @@ -867,8 +964,32 @@ static int hf_pcap_sbasZgDot = -1; /* BIT_STRING_SIZE_18 */ static int hf_pcap_sbasXgDotDot = -1; /* BIT_STRING_SIZE_10 */ static int hf_pcap_sbagYgDotDot = -1; /* BIT_STRING_SIZE_10 */ static int hf_pcap_sbasZgDotDot = -1; /* BIT_STRING_SIZE_10 */ +static int hf_pcap_uRAIndex_BDS = -1; /* BIT_STRING_SIZE_4 */ +static int hf_pcap_tOA_BDS_01 = -1; /* BIT_STRING_SIZE_17 */ +static int hf_pcap_a1_2_BDS = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_e_BDS_01 = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_oMG_BDS = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_dLTn_BDS = -1; /* BIT_STRING_SIZE_16 */ +static int hf_pcap_m0_BDS_01 = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_oMG0_BDS = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_oMGdot_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_i0_BDS = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_iDOT_BDS = -1; /* BIT_STRING_SIZE_14 */ +static int hf_pcap_cuc_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_cus_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_crc_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_crs_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_cic_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_cis_BDS = -1; /* BIT_STRING_SIZE_18 */ +static int hf_pcap_aODE_BDS = -1; /* BIT_STRING_SIZE_5 */ static int hf_pcap_sbasAgfo = -1; /* BIT_STRING_SIZE_12 */ static int hf_pcap_sbasAgf1 = -1; /* BIT_STRING_SIZE_8 */ +static int hf_pcap_toc_BDS = -1; /* BIT_STRING_SIZE_17 */ +static int hf_pcap_a0_BDS_01 = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_a1_BDS_01 = -1; /* BIT_STRING_SIZE_22 */ +static int hf_pcap_a2_BDS = -1; /* BIT_STRING_SIZE_11 */ +static int hf_pcap_tGD1_BDS = -1; /* BIT_STRING_SIZE_10 */ +static int hf_pcap_aODC_BDS = -1; /* BIT_STRING_SIZE_5 */ static int hf_pcap_utcA0 = -1; /* BIT_STRING_SIZE_16 */ static int hf_pcap_utcA1 = -1; /* BIT_STRING_SIZE_13 */ static int hf_pcap_utcA2 = -1; /* BIT_STRING_SIZE_7 */ @@ -888,6 +1009,12 @@ static int hf_pcap_utcTot_01 = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_utcWNt = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_utcDN_01 = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_utcStandardID = -1; /* BIT_STRING_SIZE_3 */ +static int hf_pcap_utca0_BDS = -1; /* BIT_STRING_SIZE_32 */ +static int hf_pcap_utca1_BDS = -1; /* BIT_STRING_SIZE_24 */ +static int hf_pcap_utcDeltatLS_BDS = -1; /* BIT_STRING_SIZE_8 */ +static int hf_pcap_utcWNlsf_BDS = -1; /* BIT_STRING_SIZE_8 */ +static int hf_pcap_utcDN_BDS = -1; /* BIT_STRING_SIZE_8 */ +static int hf_pcap_utcDeltaTlsf_BDS = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_utran_GANSSTimingOfCellFrames = -1; /* INTEGER_0_3999999 */ static int hf_pcap_referenceSfn = -1; /* INTEGER_0_4095 */ static int hf_pcap_ue_GANSSTimingOfCellFrames = -1; /* INTEGER_0_345599999999 */ @@ -1005,6 +1132,7 @@ static int hf_pcap_ganssReferenceMeasurementInfo = -1; /* BOOLEAN */ static int hf_pcap_ganssDataBits_01 = -1; /* GanssDataBits */ static int hf_pcap_ganssUTCModel = -1; /* BOOLEAN */ static int hf_pcap_ganssNavigationModelAdditionalData = -1; /* NavigationModelGANSS */ +static int hf_pcap_dGANSSSignalBDS = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_orbitModelID = -1; /* INTEGER_0_7 */ static int hf_pcap_clockModelID = -1; /* INTEGER_0_7 */ static int hf_pcap_utcModelID = -1; /* INTEGER_0_7 */ @@ -1014,7 +1142,7 @@ static int hf_pcap_reqDataBitAssistanceList_ganssSignalID = -1; /* BIT_STRING_S static int hf_pcap_ganssDataBitInterval = -1; /* INTEGER_0_15 */ static int hf_pcap_ganssSatelliteInfo = -1; /* T_ganssSatelliteInfo */ static int hf_pcap_ganssSatelliteInfo_item = -1; /* INTEGER_0_63 */ -static int hf_pcap_type = -1; /* InformationReportCharacteristicsType */ +static int hf_pcap_type_01 = -1; /* InformationReportCharacteristicsType */ static int hf_pcap_periodicity = -1; /* InformationReportPeriodicity */ static int hf_pcap_min = -1; /* INTEGER_1_60_ */ static int hf_pcap_hour = -1; /* INTEGER_1_24_ */ @@ -1053,11 +1181,14 @@ static int hf_pcap_ganss_AddNavModelsReq = -1; /* AddNavigationModelsGANSS */ static int hf_pcap_ganss_AddUtcModelsReq = -1; /* GANSS_AddUtcModelsReq */ static int hf_pcap_ganss_AuxInfoReq = -1; /* GANSS_AuxInfoReq */ static int hf_pcap_ganss_SBAS_ID = -1; /* GANSS_SBAS_ID */ +static int hf_pcap_dBDS_Corrections = -1; /* DBDS_Corrections */ +static int hf_pcap_bDS_Ionospheric_Grid_Model_Request = -1; /* BDS_Ionospheric_Grid_Model_Request */ static int hf_pcap_ganssWeek = -1; /* INTEGER_0_4095 */ static int hf_pcap_ganssTOE = -1; /* INTEGER_0_167 */ static int hf_pcap_t_toe_limit = -1; /* INTEGER_0_10 */ static int hf_pcap_addSatRelatedDataListGANSS = -1; /* AddSatelliteRelatedDataListGANSS */ static int hf_pcap_AddSatelliteRelatedDataListGANSS_item = -1; /* AddSatelliteRelatedDataGANSS */ +static int hf_pcap_dGANSS_Signal = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_ganssTimeModelGnssGnssExt = -1; /* BIT_STRING_SIZE_9 */ static int hf_pcap_transmissionTOWIndicator = -1; /* TransmissionTOWIndicator */ static int hf_pcap_navModelAdditionalData = -1; /* NavModelAdditionalData */ @@ -1139,6 +1270,9 @@ static int hf_pcap_ganssMode = -1; /* T_ganssMode */ static int hf_pcap_networkAssistedGANSSSupport_item_ganssSignalID = -1; /* GANSS_SignalID */ static int hf_pcap_supportGANSSTimingOfCellFrame = -1; /* BOOLEAN */ static int hf_pcap_supportGANSSCarrierPhaseMeasurement = -1; /* BOOLEAN */ +static int hf_pcap_AddPosSupport_item = -1; /* AddPosSupport_Element */ +static int hf_pcap_addPosID = -1; /* T_addPosID */ +static int hf_pcap_addPosMode = -1; /* T_addPosMode */ static int hf_pcap_ganss_sbas_ids = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_ganss_signal_ids = -1; /* BIT_STRING_SIZE_8 */ static int hf_pcap_utdoa_BitCount = -1; /* UTDOA_BitCount */ @@ -1405,6 +1539,19 @@ static gint ett_pcap_ProtocolExtensionContainer = -1; static gint ett_pcap_ProtocolExtensionField = -1; static gint ett_pcap_PrivateIE_Container = -1; static gint ett_pcap_PrivateIE_Field = -1; +static gint ett_pcap_AddPos_MeasuredResults = -1; +static gint ett_pcap_AddPos_MeasuredResults_Element = -1; +static gint ett_pcap_T_type = -1; +static gint ett_pcap_T_barometricPressure = -1; +static gint ett_pcap_T_wlan = -1; +static gint ett_pcap_T_bt = -1; +static gint ett_pcap_T_mbs = -1; +static gint ett_pcap_WLANMeasurementList = -1; +static gint ett_pcap_WLANMeasurementList_Element = -1; +static gint ett_pcap_BTMeasurementList = -1; +static gint ett_pcap_BTMeasurementList_Element = -1; +static gint ett_pcap_MBSMeasurementList = -1; +static gint ett_pcap_MBSMeasurementList_Element = -1; static gint ett_pcap_AlmanacAndSatelliteHealthSIB = -1; static gint ett_pcap_Cause = -1; static gint ett_pcap_CellId_MeasuredResultsSets = -1; @@ -1459,10 +1606,12 @@ static gint ett_pcap_PositionDataUEbased = -1; static gint ett_pcap_PositionData = -1; static gint ett_pcap_GANSS_PositioningDataSet = -1; static gint ett_pcap_PositioningDataSet = -1; +static gint ett_pcap_Additional_PositioningDataSet = -1; static gint ett_pcap_GPS_AcquisitionAssistance = -1; static gint ett_pcap_AcquisitionSatInfoList = -1; static gint ett_pcap_AcquisitionSatInfo = -1; static gint ett_pcap_ExtraDopplerInfo = -1; +static gint ett_pcap_ExtraDopplerInfoExtension = -1; static gint ett_pcap_AzimuthAndElevation = -1; static gint ett_pcap_AzimuthAndElevationLSB = -1; static gint ett_pcap_AuxInfoGANSS_ID1 = -1; @@ -1482,6 +1631,9 @@ static gint ett_pcap_GANSS_Additional_Ionospheric_Model = -1; static gint ett_pcap_GANSS_Additional_Navigation_Models = -1; static gint ett_pcap_GANSS_Additional_Time_Models = -1; static gint ett_pcap_GANSS_Additional_UTC_Models = -1; +static gint ett_pcap_GANSS_ALM_BDSKeplericanset = -1; +static gint ett_pcap_Satellite_Information_BDS_KP_List = -1; +static gint ett_pcap_Satellite_Information_BDS_KP_Item = -1; static gint ett_pcap_GANSS_ALM_ECEFsbasAlmanacSet = -1; static gint ett_pcap_GANSS_ALM_GlonassAlmanacSet = -1; static gint ett_pcap_GANSS_ALM_MidiAlmanacSet = -1; @@ -1500,8 +1652,17 @@ static gint ett_pcap_GANSS_DataBitAssistanceSgnList = -1; static gint ett_pcap_GANSS_DataBitAssistanceSgnItem = -1; static gint ett_pcap_GANSS_Earth_Orientation_Parameters = -1; static gint ett_pcap_GANSS_ExtraDoppler = -1; +static gint ett_pcap_GANSS_ExtraDopplerExtension = -1; static gint ett_pcap_GANSS_GenericAssistanceDataList = -1; static gint ett_pcap_GANSSGenericAssistanceData = -1; +static gint ett_pcap_BDS_Ionospheric_Grid_Model = -1; +static gint ett_pcap_BDS_Ionospheric_Grid_Information = -1; +static gint ett_pcap_BDS_Ionospheric_Grid_Information_item = -1; +static gint ett_pcap_DBDS_Correction_Information = -1; +static gint ett_pcap_DBDS_Information = -1; +static gint ett_pcap_DBDS_Information_item = -1; +static gint ett_pcap_DGANSS_Signal_Information = -1; +static gint ett_pcap_DGANSS_Signal_Information_item = -1; static gint ett_pcap_GANSS_GenericMeasurementInfo = -1; static gint ett_pcap_GANSS_GenericMeasurementInfo_item = -1; static gint ett_pcap_GANSSID = -1; @@ -1555,10 +1716,13 @@ static gint ett_pcap_NavModel_CNAVKeplerianSet = -1; static gint ett_pcap_NavModel_GLONASSecef = -1; static gint ett_pcap_NavModel_NAVKeplerianSet = -1; static gint ett_pcap_NavModel_SBASecef = -1; +static gint ett_pcap_NavModel_BDSKeplerianSet = -1; static gint ett_pcap_SBASclockModel = -1; +static gint ett_pcap_BDSClockModel = -1; static gint ett_pcap_UTCmodelSet1 = -1; static gint ett_pcap_UTCmodelSet2 = -1; static gint ett_pcap_UTCmodelSet3 = -1; +static gint ett_pcap_UTCmodelSet4 = -1; static gint ett_pcap_UTRAN_GANSSReferenceTimeDL = -1; static gint ett_pcap_UTRAN_GANSSReferenceTimeUL = -1; static gint ett_pcap_GPS_AlmanacAndSatelliteHealth = -1; @@ -1586,6 +1750,7 @@ static gint ett_pcap_AdditionalGanssAssistDataRequired = -1; static gint ett_pcap_GANSSReq_AddIonosphericModel = -1; static gint ett_pcap_GanssRequestedGenericAssistanceDataList = -1; static gint ett_pcap_GanssReqGenericData = -1; +static gint ett_pcap_DBDSCorrection = -1; static gint ett_pcap_GANSS_AddADchoices = -1; static gint ett_pcap_GanssDataBits = -1; static gint ett_pcap_ReqDataBitAssistanceList = -1; @@ -1605,6 +1770,7 @@ static gint ett_pcap_GANSSGenericDataReq = -1; static gint ett_pcap_AddNavigationModelsGANSS = -1; static gint ett_pcap_AddSatelliteRelatedDataListGANSS = -1; static gint ett_pcap_AddSatelliteRelatedDataGANSS = -1; +static gint ett_pcap_DBDS_Corrections = -1; static gint ett_pcap_GANSS_AddUtcModelsReq = -1; static gint ett_pcap_GANSS_AuxInfoReq = -1; static gint ett_pcap_Ganss_utcModelReq = -1; @@ -1654,6 +1820,8 @@ static gint ett_pcap_RequestType = -1; static gint ett_pcap_UE_PositioningCapability = -1; static gint ett_pcap_NetworkAssistedGANSSSupport = -1; static gint ett_pcap_NetworkAssistedGANSSSupport_item = -1; +static gint ett_pcap_AddPosSupport = -1; +static gint ett_pcap_AddPosSupport_Element = -1; static gint ett_pcap_GANSS_SBAS_IDs = -1; static gint ett_pcap_GANSS_Signal_IDs = -1; static gint ett_pcap_UTDOAPositioning = -1; @@ -2032,8 +2200,23 @@ static const value_string pcap_ProtocolIE_ID_vals[] = { { id_ganss_Delta_T, "id-ganss-Delta-T" }, { id_requestedCellIDGERANMeasurements, "id-requestedCellIDGERANMeasurements" }, { id_CellId_IRATMeasuredResultsSets, "id-CellId-IRATMeasuredResultsSets" }, + { id_Unknown_126, "id-Unknown-126" }, + { id_Unknown_127, "id-Unknown-127" }, { id_IMSI, "id-IMSI" }, { id_IMEI, "id-IMEI" }, + { id_GANSS_alm_keplerianBDSAlmanac, "id-GANSS-alm-keplerianBDSAlmanac" }, + { id_BDS_Ionospheric_Grid_Model, "id-BDS-Ionospheric-Grid-Model" }, + { id_DBDS_Correction_Information, "id-DBDS-Correction-Information" }, + { id_BDSIonosphericGridModel, "id-BDSIonosphericGridModel" }, + { id_DBDSCorrection, "id-DBDSCorrection" }, + { id_Confidence, "id-Confidence" }, + { id_ExtraDopplerInfoExtension, "id-ExtraDopplerInfoExtension" }, + { id_GANSS_Confidence, "id-GANSS-Confidence" }, + { id_GANSS_ExtraDopplerExtension, "id-GANSS-ExtraDopplerExtension" }, + { id_Additional_PositioningDataSet, "id-Additional-PositioningDataSet" }, + { id_Additional_PositioningMethod, "id-Additional-PositioningMethod" }, + { id_AddPos_MeasuredResults, "id-AddPos-MeasuredResults" }, + { id_AddPosSupport, "id-AddPosSupport" }, { 0, NULL } }; @@ -2273,6 +2456,346 @@ dissect_pcap_AdditionalMethodType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t +static int +dissect_pcap_UTCTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE); + + return offset; +} + + + +static int +dissect_pcap_BaroMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 30000U, 115000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_barometricPressure_sequence[] = { + { &hf_pcap_uncompensatedBarometricPressure, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BaroMeasurement }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_T_barometricPressure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_T_barometricPressure, T_barometricPressure_sequence); + + return offset; +} + + + +static int +dissect_pcap_OCTET_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, NULL); + + return offset; +} + + + +static int +dissect_pcap_OCTET_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 32, FALSE, NULL); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -127, 128U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16777215U, NULL, FALSE); + + return offset; +} + + +static const value_string pcap_T_wlanRTTunits_vals[] = { + { 0, "microseconds" }, + { 1, "hundredsofnanoseconds" }, + { 2, "tensofnanoseconds" }, + { 3, "nanoseconds" }, + { 4, "tenthsofnanosecond" }, + { 0, NULL } +}; + + +static int +dissect_pcap_T_wlanRTTunits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_0_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 256U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_pcap_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const per_sequence_t WLANMeasurementList_Element_sequence[] = { + { &hf_pcap_wlanBSSID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_OCTET_STRING_SIZE_6 }, + { &hf_pcap_wlanSSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_OCTET_STRING_SIZE_1_32 }, + { &hf_pcap_wlanRSSI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_M127_128 }, + { &hf_pcap_wlanRTTvalue , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_0_16777215 }, + { &hf_pcap_wlanRTTunits , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_T_wlanRTTunits }, + { &hf_pcap_wlanRTTaccuracy, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_0_255 }, + { &hf_pcap_wlanAPChannelFrequency, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_0_256 }, + { &hf_pcap_wlanServingFlag, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_BOOLEAN }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_WLANMeasurementList_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_WLANMeasurementList_Element, WLANMeasurementList_Element_sequence); + + return offset; +} + + +static const per_sequence_t WLANMeasurementList_sequence_of[1] = { + { &hf_pcap_WLANMeasurementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_WLANMeasurementList_Element }, +}; + +static int +dissect_pcap_WLANMeasurementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_WLANMeasurementList, WLANMeasurementList_sequence_of, + 1, maxWLANs, FALSE); + + return offset; +} + + +static const per_sequence_t T_wlan_sequence[] = { + { &hf_pcap_wlanMeasurementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_WLANMeasurementList }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_T_wlan(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_T_wlan, T_wlan_sequence); + + return offset; +} + + +static const per_sequence_t BTMeasurementList_Element_sequence[] = { + { &hf_pcap_btADDR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_OCTET_STRING_SIZE_6 }, + { &hf_pcap_btRSSI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_M127_128 }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_BTMeasurementList_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_BTMeasurementList_Element, BTMeasurementList_Element_sequence); + + return offset; +} + + +static const per_sequence_t BTMeasurementList_sequence_of[1] = { + { &hf_pcap_BTMeasurementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_BTMeasurementList_Element }, +}; + +static int +dissect_pcap_BTMeasurementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_BTMeasurementList, BTMeasurementList_sequence_of, + 1, maxBTs, FALSE); + + return offset; +} + + +static const per_sequence_t T_bt_sequence[] = { + { &hf_pcap_btMeasurementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BTMeasurementList }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_T_bt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_T_bt, T_bt_sequence); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_0_2097151(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2097151U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MBSMeasurementList_Element_sequence[] = { + { &hf_pcap_transmitterID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_32767 }, + { &hf_pcap_codephase , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_2097151 }, + { &hf_pcap_codephaseRMS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_MBSMeasurementList_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_MBSMeasurementList_Element, MBSMeasurementList_Element_sequence); + + return offset; +} + + +static const per_sequence_t MBSMeasurementList_sequence_of[1] = { + { &hf_pcap_MBSMeasurementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_MBSMeasurementList_Element }, +}; + +static int +dissect_pcap_MBSMeasurementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_MBSMeasurementList, MBSMeasurementList_sequence_of, + 1, maxBeacons, FALSE); + + return offset; +} + + +static const per_sequence_t T_mbs_sequence[] = { + { &hf_pcap_mbsMeasurementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_MBSMeasurementList }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_T_mbs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_T_mbs, T_mbs_sequence); + + return offset; +} + + +static const value_string pcap_T_type_vals[] = { + { 0, "barometricPressure" }, + { 1, "wlan" }, + { 2, "bt" }, + { 3, "mbs" }, + { 0, NULL } +}; + +static const per_choice_t T_type_choice[] = { + { 0, &hf_pcap_barometricPressure, ASN1_EXTENSION_ROOT , dissect_pcap_T_barometricPressure }, + { 1, &hf_pcap_wlan , ASN1_EXTENSION_ROOT , dissect_pcap_T_wlan }, + { 2, &hf_pcap_bt , ASN1_EXTENSION_ROOT , dissect_pcap_T_bt }, + { 3, &hf_pcap_mbs , ASN1_EXTENSION_ROOT , dissect_pcap_T_mbs }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_pcap_T_type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_pcap_T_type, T_type_choice, + NULL); + + return offset; +} + + +static const per_sequence_t AddPos_MeasuredResults_Element_sequence[] = { + { &hf_pcap_timestamp , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_UTCTime }, + { &hf_pcap_type , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_T_type }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_AddPos_MeasuredResults_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_AddPos_MeasuredResults_Element, AddPos_MeasuredResults_Element_sequence); + + return offset; +} + + +static const per_sequence_t AddPos_MeasuredResults_sequence_of[1] = { + { &hf_pcap_AddPos_MeasuredResults_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_AddPos_MeasuredResults_Element }, +}; + +static int +dissect_pcap_AddPos_MeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_AddPos_MeasuredResults, AddPos_MeasuredResults_sequence_of, + 1, maxAddPos, FALSE); + + return offset; +} + + + static int dissect_pcap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -2293,16 +2816,6 @@ dissect_pcap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac -static int -dissect_pcap_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 63U, NULL, FALSE); - - return offset; -} - - - static int dissect_pcap_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -2460,6 +2973,9 @@ static const value_string pcap_CauseRadioNetwork_vals[] = { { 29, "position-calculation-error-AGANSS-positioning-method-not-supported" }, { 30, "ue-positioning-error-Not-enough-GANSS-Satellites" }, { 31, "ue-positioning-error-Not-Accomplished-GANSS-Timing-of-Cell-Frames" }, + { 32, "position-calculation-error-invalid-BDS-measured-results" }, + { 33, "ue-Positioning-Error-Not-enough-BDS-Satellites" }, + { 34, "position-calculation-error-A-BDS-positioning-method-not-supported" }, { 0, NULL } }; @@ -2469,7 +2985,7 @@ static value_string_ext pcap_CauseRadioNetwork_vals_ext = VALUE_STRING_EXT_INIT( static int dissect_pcap_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 4, NULL, TRUE, 28, NULL); + 4, NULL, TRUE, 31, NULL); return offset; } @@ -3437,15 +3953,6 @@ dissect_pcap_CellId_IRATMeasuredResultsSets(tvbuff_t *tvb _U_, int offset _U_, a } - -static int -dissect_pcap_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); - - return offset; -} - - static const per_sequence_t T_fdd_sequence[] = { { &hf_pcap_roundTripTimeInfoWanted, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BOOLEAN }, { &hf_pcap_pathlossWanted , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BOOLEAN }, @@ -3710,16 +4217,6 @@ dissect_pcap_DiffCorrectionStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } - -static int -dissect_pcap_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 255U, NULL, FALSE); - - return offset; -} - - static const value_string pcap_UDRE_vals[] = { { 0, "lessThan1" }, { 1, "between1-and-4" }, @@ -3872,7 +4369,7 @@ dissect_pcap_DGNSS_ValidityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_pcap_IMEI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 3, 8, FALSE, NULL); + 8, 8, FALSE, NULL); return offset; } @@ -3882,7 +4379,7 @@ dissect_pcap_IMEI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_pcap_IMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL); + 3, 8, FALSE, NULL); return offset; } @@ -4133,6 +4630,30 @@ dissect_pcap_GANSS_PositioningDataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ct +static int +dissect_pcap_Additional_PositioningMethodAndUsage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t Additional_PositioningDataSet_sequence_of[1] = { + { &hf_pcap_Additional_PositioningDataSet_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_Additional_PositioningMethodAndUsage }, +}; + +static int +dissect_pcap_Additional_PositioningDataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_Additional_PositioningDataSet, Additional_PositioningDataSet_sequence_of, + 1, maxAddPos, FALSE); + + return offset; +} + + + static int dissect_pcap_INTEGER_0_604799999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -4337,6 +4858,41 @@ dissect_pcap_GPS_AcquisitionAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const value_string pcap_DopplerUncertaintyExtension_vals[] = { + { 0, "hz300" }, + { 1, "hz400" }, + { 2, "hz500" }, + { 3, "hz600" }, + { 4, "noInformation" }, + { 0, NULL } +}; + + +static int +dissect_pcap_DopplerUncertaintyExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ExtraDopplerInfoExtension_sequence[] = { + { &hf_pcap_doppler1stOrder, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_M42_21 }, + { &hf_pcap_dopplerUncertaintyExtension, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_DopplerUncertaintyExtension }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_ExtraDopplerInfoExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_ExtraDopplerInfoExtension, ExtraDopplerInfoExtension_sequence); + + return offset; +} + + static int dissect_pcap_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4363,6 +4919,16 @@ dissect_pcap_AzimuthAndElevationLSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } + +static int +dissect_pcap_Confidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 100U, NULL, FALSE); + + return offset; +} + + static const per_sequence_t AuxInfoGANSS_ID1_element_sequence[] = { { &hf_pcap_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, { &hf_pcap_signalsAvailable, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, @@ -4749,11 +5315,42 @@ dissect_pcap_SBASclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } + +static int +dissect_pcap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 17, 17, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t BDSClockModel_sequence[] = { + { &hf_pcap_toc_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_17 }, + { &hf_pcap_a0_BDS_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_a1_BDS_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_22 }, + { &hf_pcap_a2_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_tGD1_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_10 }, + { &hf_pcap_aODC_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_5 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_BDSClockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_BDSClockModel, BDSClockModel_sequence); + + return offset; +} + + static const value_string pcap_GANSS_AddClockModels_vals[] = { { 0, "navClockModel" }, { 1, "cnavClockModel" }, { 2, "glonassClockModel" }, { 3, "sbasClockModel" }, + { 4, "bDSClockModel" }, { 0, NULL } }; @@ -4762,6 +5359,7 @@ static const per_choice_t GANSS_AddClockModels_choice[] = { { 1, &hf_pcap_cnavClockModel , ASN1_EXTENSION_ROOT , dissect_pcap_CNAVclockModel }, { 2, &hf_pcap_glonassClockModel, ASN1_EXTENSION_ROOT , dissect_pcap_GLONASSclockModel }, { 3, &hf_pcap_sbasClockModel , ASN1_EXTENSION_ROOT , dissect_pcap_SBASclockModel }, + { 4, &hf_pcap_bDSClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_pcap_BDSClockModel }, { 0, NULL, 0, NULL } }; @@ -4858,16 +5456,6 @@ dissect_pcap_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a -static int -dissect_pcap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, 0, NULL, NULL); - - return offset; -} - - - static int dissect_pcap_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -5022,11 +5610,44 @@ dissect_pcap_NavModel_SBASecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const per_sequence_t NavModel_BDSKeplerianSet_sequence[] = { + { &hf_pcap_uRAIndex_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_4 }, + { &hf_pcap_tOA_BDS_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_17 }, + { &hf_pcap_a1_2_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_e_BDS_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_oMG_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_dLTn_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, + { &hf_pcap_m0_BDS_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_oMG0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_oMGdot_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_i0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_iDOT_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_14 }, + { &hf_pcap_cuc_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_cus_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_crc_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_crs_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_cic_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_cis_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, + { &hf_pcap_aODE_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_5 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_NavModel_BDSKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_NavModel_BDSKeplerianSet, NavModel_BDSKeplerianSet_sequence); + + return offset; +} + + static const value_string pcap_GANSS_AddOrbitModels_vals[] = { { 0, "navKeplerianSet" }, { 1, "cnavKeplerianSet" }, { 2, "glonassECEF" }, { 3, "sbasECEF" }, + { 4, "bDSKeplerianSet" }, { 0, NULL } }; @@ -5035,6 +5656,7 @@ static const per_choice_t GANSS_AddOrbitModels_choice[] = { { 1, &hf_pcap_cnavKeplerianSet, ASN1_EXTENSION_ROOT , dissect_pcap_NavModel_CNAVKeplerianSet }, { 2, &hf_pcap_glonassECEF , ASN1_EXTENSION_ROOT , dissect_pcap_NavModel_GLONASSecef }, { 3, &hf_pcap_sbasECEF , ASN1_EXTENSION_ROOT , dissect_pcap_NavModel_SBASecef }, + { 4, &hf_pcap_bDSKeplerianSet, ASN1_NOT_EXTENSION_ROOT, dissect_pcap_NavModel_BDSKeplerianSet }, { 0, NULL, 0, NULL } }; @@ -5195,6 +5817,7 @@ static const value_string pcap_T_gnss_to_id_vals[] = { { 1, "galileo" }, { 2, "qzss" }, { 3, "glonass" }, + { 4, "bds" }, { 0, NULL } }; @@ -5202,7 +5825,7 @@ static const value_string pcap_T_gnss_to_id_vals[] = { static int dissect_pcap_T_gnss_to_id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 1, NULL, TRUE, 3, NULL); + 1, NULL, TRUE, 4, NULL); return offset; } @@ -5326,10 +5949,33 @@ dissect_pcap_UTCmodelSet3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const per_sequence_t UTCmodelSet4_sequence[] = { + { &hf_pcap_utca0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_32 }, + { &hf_pcap_utca1_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_utcDeltatLS_BDS, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_utcWNt , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_utcDeltaTls , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_utcWNlsf_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_utcDN_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_utcDeltaTlsf_BDS, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_UTCmodelSet4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_UTCmodelSet4, UTCmodelSet4_sequence); + + return offset; +} + + static const value_string pcap_GANSS_Additional_UTC_Models_vals[] = { { 0, "utcModel1" }, { 1, "utcModel2" }, { 2, "utcModel3" }, + { 3, "utcModel4" }, { 0, NULL } }; @@ -5337,6 +5983,7 @@ static const per_choice_t GANSS_Additional_UTC_Models_choice[] = { { 0, &hf_pcap_utcModel1 , ASN1_EXTENSION_ROOT , dissect_pcap_UTCmodelSet1 }, { 1, &hf_pcap_utcModel2 , ASN1_EXTENSION_ROOT , dissect_pcap_UTCmodelSet2 }, { 2, &hf_pcap_utcModel3 , ASN1_EXTENSION_ROOT , dissect_pcap_UTCmodelSet3 }, + { 3, &hf_pcap_utcModel4 , ASN1_NOT_EXTENSION_ROOT, dissect_pcap_UTCmodelSet4 }, { 0, NULL, 0, NULL } }; @@ -5360,6 +6007,61 @@ dissect_pcap_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const per_sequence_t Satellite_Information_BDS_KP_Item_sequence[] = { + { &hf_pcap_sVID_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, + { &hf_pcap_tOA_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_a21_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_e_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_17 }, + { &hf_pcap_omg_lower_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_m0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_omg_0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_24 }, + { &hf_pcap_omg_upper_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_17 }, + { &hf_pcap_delta_i_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, + { &hf_pcap_a0_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_a1_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_hea_BDS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_BIT_STRING_SIZE_9 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_Satellite_Information_BDS_KP_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_Satellite_Information_BDS_KP_Item, Satellite_Information_BDS_KP_Item_sequence); + + return offset; +} + + +static const per_sequence_t Satellite_Information_BDS_KP_List_sequence_of[1] = { + { &hf_pcap_Satellite_Information_BDS_KP_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_Satellite_Information_BDS_KP_Item }, +}; + +static int +dissect_pcap_Satellite_Information_BDS_KP_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_Satellite_Information_BDS_KP_List, Satellite_Information_BDS_KP_List_sequence_of, + 1, maxGANSSSatAlmanac, FALSE); + + return offset; +} + + +static const per_sequence_t GANSS_ALM_BDSKeplericanset_sequence[] = { + { &hf_pcap_satellite_Information_BDS_KP_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_Satellite_Information_BDS_KP_List }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_GANSS_ALM_BDSKeplericanset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_GANSS_ALM_BDSKeplericanset, GANSS_ALM_BDSKeplericanset_sequence); + + return offset; +} + + static const per_sequence_t GANSS_SAT_Info_Almanac_SBASecef_sequence[] = { { &hf_pcap_sbasAlmDataID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_2 }, { &hf_pcap_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, @@ -5632,18 +6334,29 @@ dissect_pcap_GANSS_ALM_ReducedKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, as } + +static int +dissect_pcap_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, FALSE); + + return offset; +} + + static const per_sequence_t GANSS_SatelliteInformationKPItem_sequence[] = { { &hf_pcap_satId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, { &hf_pcap_ganss_e_alm , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, { &hf_pcap_ganss_delta_I_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, { &hf_pcap_ganss_omegadot_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, - { &hf_pcap_ganss_svhealth_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_4 }, - { &hf_pcap_ganss_delta_a_sqrt_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_17 }, + { &hf_pcap_ganss_svStatusINAV_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_4 }, + { &hf_pcap_ganss_svStatusFNAV_alm, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_BIT_STRING_SIZE_2 }, + { &hf_pcap_ganss_delta_a_sqrt_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_13 }, { &hf_pcap_ganss_omegazero_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, { &hf_pcap_ganss_m_zero_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, { &hf_pcap_ganss_omega_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, - { &hf_pcap_ganss_af_zero_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_14 }, - { &hf_pcap_ganss_af_one_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_ganss_af_zero_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_16 }, + { &hf_pcap_ganss_af_one_alm, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_13 }, { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -5672,8 +6385,8 @@ dissect_pcap_GANSS_SatelliteInformationKP(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t GANSS_KeplerianParametersAlm_sequence[] = { - { &hf_pcap_t_oa , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_255 }, - { &hf_pcap_iod_a , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_3 }, + { &hf_pcap_t_oa_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_1023 }, + { &hf_pcap_iod_a , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_15 }, { &hf_pcap_gANSS_SatelliteInformationKP, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_GANSS_SatelliteInformationKP }, { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -5785,9 +6498,9 @@ dissect_pcap_GANSS_AzimuthAndElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_pcap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_pcap_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, 0, NULL, NULL); + 31, 31, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5795,10 +6508,11 @@ dissect_pcap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static const per_sequence_t GANSS_SatelliteClockModelItem_sequence[] = { { &hf_pcap_t_oc , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_14 }, - { &hf_pcap_a_i2 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_12 }, - { &hf_pcap_a_i1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_18 }, - { &hf_pcap_a_i0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_28 }, + { &hf_pcap_a_i2 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_6 }, + { &hf_pcap_a_i1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_21 }, + { &hf_pcap_a_i0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_31 }, { &hf_pcap_t_gd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_BIT_STRING_SIZE_10 }, + { &hf_pcap_sisa , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, { &hf_pcap_model_id , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_INTEGER_0_3 }, { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -5935,9 +6649,9 @@ dissect_pcap_GANSS_IonosphereRegionalStormFlags(tvbuff_t *tvb _U_, int offset _U static const per_sequence_t GANSS_Ionospheric_Model_sequence[] = { - { &hf_pcap_alpha_zero_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_12 }, - { &hf_pcap_alpha_one_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_12 }, - { &hf_pcap_alpha_two_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_12 }, + { &hf_pcap_alpha_zero_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_alpha_one_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_11 }, + { &hf_pcap_alpha_two_ionos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_14 }, { &hf_pcap_gANSS_IonosphereRegionalStormFlags, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_GANSS_IonosphereRegionalStormFlags }, { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -6081,16 +6795,6 @@ dissect_pcap_GANSS_Data_Bit_Assistance(tvbuff_t *tvb _U_, int offset _U_, asn1_c -static int -dissect_pcap_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 31, 31, FALSE, NULL, 0, NULL, NULL); - - return offset; -} - - - static int dissect_pcap_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -6156,6 +6860,41 @@ dissect_pcap_GANSS_ExtraDoppler(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const value_string pcap_T_dopplerUncertaintyExtension_vals[] = { + { 0, "dH60" }, + { 1, "dH80" }, + { 2, "dH100" }, + { 3, "dH120" }, + { 4, "noInformation" }, + { 0, NULL } +}; + + +static int +dissect_pcap_T_dopplerUncertaintyExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GANSS_ExtraDopplerExtension_sequence[] = { + { &hf_pcap_dopplerFirstOrder, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_M42_21 }, + { &hf_pcap_dopplerUncertaintyExtension_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_T_dopplerUncertaintyExtension }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_GANSS_ExtraDopplerExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_GANSS_ExtraDopplerExtension, GANSS_ExtraDopplerExtension_sequence); + + return offset; +} + + static const per_sequence_t GANSS_RealTimeInformationItem_sequence[] = { { &hf_pcap_bad_ganss_satId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, { &hf_pcap_bad_ganss_signalId, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_BIT_STRING_SIZE_8 }, @@ -6186,16 +6925,6 @@ dissect_pcap_GANSS_Real_Time_Integrity(tvbuff_t *tvb _U_, int offset _U_, asn1_c } - -static int -dissect_pcap_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 1023U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t GANSS_SatelliteInformationItem_sequence[] = { { &hf_pcap_ganssSatId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, { &hf_pcap_dopplerZeroOrder, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_M2048_2047 }, @@ -6336,7 +7065,7 @@ dissect_pcap_GANSS_Orbit_Model(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static const per_sequence_t GANSS_Sat_Info_Nav_item_sequence[] = { { &hf_pcap_satId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, - { &hf_pcap_svHealth_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_5 }, + { &hf_pcap_svHealth_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_9 }, { &hf_pcap_iod_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_10 }, { &hf_pcap_ganssClockModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_GANSS_Clock_Model }, { &hf_pcap_ganssOrbitModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_GANSS_Orbit_Model }, @@ -6420,6 +7149,151 @@ dissect_pcap_GANSS_GenericAssistanceDataList(tvbuff_t *tvb _U_, int offset _U_, } + +static int +dissect_pcap_BDS_Reference_Time(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3570U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_pcap_INTEGER_1_320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 320U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t BDS_Ionospheric_Grid_Information_item_sequence[] = { + { &hf_pcap_iGP_number_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_1_320 }, + { &hf_pcap_vertical_Delay_BDS, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_9 }, + { &hf_pcap_gIVEI_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_4 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_BDS_Ionospheric_Grid_Information_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_BDS_Ionospheric_Grid_Information_item, BDS_Ionospheric_Grid_Information_item_sequence); + + return offset; +} + + +static const per_sequence_t BDS_Ionospheric_Grid_Information_sequence_of[1] = { + { &hf_pcap_BDS_Ionospheric_Grid_Information_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_BDS_Ionospheric_Grid_Information_item }, +}; + +static int +dissect_pcap_BDS_Ionospheric_Grid_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_BDS_Ionospheric_Grid_Information, BDS_Ionospheric_Grid_Information_sequence_of, + 1, maxIonGridInfo, FALSE); + + return offset; +} + + +static const per_sequence_t BDS_Ionospheric_Grid_Model_sequence[] = { + { &hf_pcap_bDS_Reference_Time, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BDS_Reference_Time }, + { &hf_pcap_bDS_Ionospheric_Grid_Information, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BDS_Ionospheric_Grid_Information }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_BDS_Ionospheric_Grid_Model(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_BDS_Ionospheric_Grid_Model, BDS_Ionospheric_Grid_Model_sequence); + + return offset; +} + + +static const per_sequence_t DGANSS_Signal_Information_item_sequence[] = { + { &hf_pcap_sat_ID_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_63 }, + { &hf_pcap_uDREI_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_15 }, + { &hf_pcap_rURAI_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_15 }, + { &hf_pcap_delta_t_BDS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_13 }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_DGANSS_Signal_Information_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_DGANSS_Signal_Information_item, DGANSS_Signal_Information_item_sequence); + + return offset; +} + + +static const per_sequence_t DGANSS_Signal_Information_sequence_of[1] = { + { &hf_pcap_DGANSS_Signal_Information_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_DGANSS_Signal_Information_item }, +}; + +static int +dissect_pcap_DGANSS_Signal_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_DGANSS_Signal_Information, DGANSS_Signal_Information_sequence_of, + 1, maxGANSSSat, FALSE); + + return offset; +} + + +static const per_sequence_t DBDS_Information_item_sequence[] = { + { &hf_pcap_dBDS_Signal_ID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_GANSSID }, + { &hf_pcap_dGANSS_Signal_Information, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_DGANSS_Signal_Information }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_DBDS_Information_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_DBDS_Information_item, DBDS_Information_item_sequence); + + return offset; +} + + +static const per_sequence_t DBDS_Information_sequence_of[1] = { + { &hf_pcap_DBDS_Information_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_DBDS_Information_item }, +}; + +static int +dissect_pcap_DBDS_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_DBDS_Information, DBDS_Information_sequence_of, + 1, maxSgnType, FALSE); + + return offset; +} + + +static const per_sequence_t DBDS_Correction_Information_sequence[] = { + { &hf_pcap_bDS_Reference_Time, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BDS_Reference_Time }, + { &hf_pcap_dBDS_Information, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_DBDS_Information }, + { &hf_pcap_ie_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_DBDS_Correction_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_DBDS_Correction_Information, DBDS_Correction_Information_sequence); + + return offset; +} + + static const value_string pcap_T_multipathIndicator_vals[] = { { 0, "nM" }, { 1, "low" }, @@ -6439,16 +7313,6 @@ dissect_pcap_T_multipathIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t -static int -dissect_pcap_INTEGER_0_2097151(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 2097151U, NULL, FALSE); - - return offset; -} - - - static int dissect_pcap_INTEGER_M32768_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -7482,6 +8346,30 @@ dissect_pcap_GANSSReq_EarthOrientPara(tvbuff_t *tvb _U_, int offset _U_, asn1_ct +static int +dissect_pcap_BDSIonosphericGridModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const per_sequence_t DBDSCorrection_sequence[] = { + { &hf_pcap_dGANSSSignalBDS, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_DBDSCorrection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_DBDSCorrection, DBDSCorrection_sequence); + + return offset; +} + + + static int dissect_pcap_GANSS_AddNavigationModel_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); @@ -7596,7 +8484,7 @@ dissect_pcap_InformationReportPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t InformationReportCharacteristics_sequence[] = { - { &hf_pcap_type , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_InformationReportCharacteristicsType }, + { &hf_pcap_type_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_InformationReportCharacteristicsType }, { &hf_pcap_periodicity , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_InformationReportPeriodicity }, { NULL, 0, 0, NULL } }; @@ -8026,6 +8914,37 @@ dissect_pcap_GANSS_SBAS_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const per_sequence_t DBDS_Corrections_sequence[] = { + { &hf_pcap_transmissionGanssTimeIndicator, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_TransmissionGanssTimeIndicator }, + { &hf_pcap_dGANSS_Signal , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, + { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_DBDS_Corrections(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_DBDS_Corrections, DBDS_Corrections_sequence); + + return offset; +} + + +static const value_string pcap_BDS_Ionospheric_Grid_Model_Request_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_pcap_BDS_Ionospheric_Grid_Model_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + static const per_sequence_t GANSSGenericDataReq_sequence[] = { { &hf_pcap_ganssID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_GANSSID }, { &hf_pcap_ganss_realTimeIntegrity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_Ganss_realTimeIntegrityReq }, @@ -8040,6 +8959,8 @@ static const per_sequence_t GANSSGenericDataReq_sequence[] = { { &hf_pcap_ganss_AddUtcModelsReq, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_pcap_GANSS_AddUtcModelsReq }, { &hf_pcap_ganss_AuxInfoReq, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_pcap_GANSS_AuxInfoReq }, { &hf_pcap_ganss_SBAS_ID , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_pcap_GANSS_SBAS_ID }, + { &hf_pcap_dBDS_Corrections, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_pcap_DBDS_Corrections }, + { &hf_pcap_bDS_Ionospheric_Grid_Model_Request, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_pcap_BDS_Ionospheric_Grid_Model_Request }, { NULL, 0, 0, NULL } }; @@ -8762,6 +9683,8 @@ static const value_string pcap_SelectedPositionMethod_vals[] = { { 4, "uTDOA" }, { 5, "gNSS" }, { 6, "oTDOA-or-GNSS" }, + { 7, "gPS-and-AddPos" }, + { 8, "oTDOA-or-GPS-and-AddPos" }, { 0, NULL } }; @@ -8769,7 +9692,7 @@ static const value_string pcap_SelectedPositionMethod_vals[] = { static int dissect_pcap_SelectedPositionMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 5, NULL, TRUE, 2, NULL); + 5, NULL, TRUE, 4, NULL); return offset; } @@ -8801,6 +9724,16 @@ dissect_pcap_GNSS_PositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } + +static int +dissect_pcap_Additional_PositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + static const value_string pcap_PositioningPriority_vals[] = { { 0, "high-priority" }, { 1, "normal-priority" }, @@ -9100,6 +10033,70 @@ dissect_pcap_NetworkAssistedGANSSSupport(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const value_string pcap_T_addPosID_vals[] = { + { 0, "barometricPressure" }, + { 1, "wLAN" }, + { 2, "bluetooth" }, + { 3, "mBS" }, + { 0, NULL } +}; + + +static int +dissect_pcap_T_addPosID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string pcap_T_addPosMode_vals[] = { + { 0, "standalone" }, + { 1, "ue-assisted" }, + { 2, "both" }, + { 0, NULL } +}; + + +static int +dissect_pcap_T_addPosMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AddPosSupport_Element_sequence[] = { + { &hf_pcap_addPosID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_T_addPosID }, + { &hf_pcap_addPosMode , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_T_addPosMode }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_pcap_AddPosSupport_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_pcap_AddPosSupport_Element, AddPosSupport_Element_sequence); + + return offset; +} + + +static const per_sequence_t AddPosSupport_sequence_of[1] = { + { &hf_pcap_AddPosSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_AddPosSupport_Element }, +}; + +static int +dissect_pcap_AddPosSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_pcap_AddPosSupport, AddPosSupport_sequence_of, + 1, maxAddPos, FALSE); + + return offset; +} + + static const per_sequence_t GANSS_SBAS_IDs_sequence[] = { { &hf_pcap_ganss_sbas_ids , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pcap_BIT_STRING_SIZE_8 }, { &hf_pcap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_pcap_ProtocolExtensionContainer }, @@ -10822,16 +11819,6 @@ dissect_pcap_T_ctfc16Bit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } - -static int -dissect_pcap_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 16777215U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t T_ctfc24Bit_sequence_of[1] = { { &hf_pcap_ctfc24Bit_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_pcap_INTEGER_0_16777215 }, }; @@ -12509,6 +13496,14 @@ static int dissect_AccuracyFulfilmentIndicator_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_AddPos_MeasuredResults_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_AddPos_MeasuredResults(tvb, offset, &asn1_ctx, tree, hf_pcap_AddPos_MeasuredResults_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_Cause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12685,6 +13680,22 @@ static int dissect_GANSS_PositioningDataSet_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_Additional_PositioningDataSet_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_Additional_PositioningDataSet(tvb, offset, &asn1_ctx, tree, hf_pcap_Additional_PositioningDataSet_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ExtraDopplerInfoExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_ExtraDopplerInfoExtension(tvb, offset, &asn1_ctx, tree, hf_pcap_ExtraDopplerInfoExtension_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_AzimuthAndElevationLSB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12693,6 +13704,14 @@ static int dissect_AzimuthAndElevationLSB_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_Confidence_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_Confidence(tvb, offset, &asn1_ctx, tree, hf_pcap_Confidence_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GANSS_Additional_Ionospheric_Model_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12725,6 +13744,14 @@ static int dissect_GANSS_Additional_UTC_Models_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_GANSS_ALM_BDSKeplericanset_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_GANSS_ALM_BDSKeplericanset(tvb, offset, &asn1_ctx, tree, hf_pcap_GANSS_ALM_BDSKeplericanset_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GANSS_ALM_ECEFsbasAlmanacSet_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12789,6 +13816,14 @@ static int dissect_GANSS_Earth_Orientation_Parameters_PDU(tvbuff_t *tvb _U_, pac offset += 7; offset >>= 3; return offset; } +static int dissect_GANSS_ExtraDopplerExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_GANSS_ExtraDopplerExtension(tvb, offset, &asn1_ctx, tree, hf_pcap_GANSS_ExtraDopplerExtension_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GANSS_GenericAssistanceDataList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12797,6 +13832,22 @@ static int dissect_GANSS_GenericAssistanceDataList_PDU(tvbuff_t *tvb _U_, packet offset += 7; offset >>= 3; return offset; } +static int dissect_BDS_Ionospheric_Grid_Model_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_BDS_Ionospheric_Grid_Model(tvb, offset, &asn1_ctx, tree, hf_pcap_BDS_Ionospheric_Grid_Model_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DBDS_Correction_Information_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_DBDS_Correction_Information(tvb, offset, &asn1_ctx, tree, hf_pcap_DBDS_Correction_Information_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GanssCodePhaseAmbiguityExt_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -12933,6 +13984,22 @@ static int dissect_GANSSReq_EarthOrientPara_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_BDSIonosphericGridModel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_BDSIonosphericGridModel(tvb, offset, &asn1_ctx, tree, hf_pcap_BDSIonosphericGridModel_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_DBDSCorrection_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_DBDSCorrection(tvb, offset, &asn1_ctx, tree, hf_pcap_DBDSCorrection_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GANSS_AddNavigationModel_Req_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13117,6 +14184,14 @@ static int dissect_GNSS_PositioningMethod_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_Additional_PositioningMethod_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_Additional_PositioningMethod(tvb, offset, &asn1_ctx, tree, hf_pcap_Additional_PositioningMethod_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PositioningPriority_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13173,6 +14248,14 @@ static int dissect_NetworkAssistedGANSSSupport_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_AddPosSupport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_pcap_AddPosSupport(tvb, offset, &asn1_ctx, tree, hf_pcap_AddPosSupport_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GANSS_SBAS_IDs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -13628,6 +14711,7 @@ proto_reg_handoff_pcap(void) dissector_add_uint("pcap.ies", id_OTDOA_MeasuredResultsSets, create_dissector_handle(dissect_OTDOA_MeasuredResultsSets_PDU, proto_pcap)); dissector_add_uint("pcap.ies", id_PeriodicPosCalcInfo, create_dissector_handle(dissect_PeriodicPosCalcInfo_PDU, proto_pcap)); dissector_add_uint("pcap.ies", id_PeriodicTerminationCause, create_dissector_handle(dissect_PeriodicTerminationCause_PDU, proto_pcap)); + dissector_add_uint("pcap.ies", id_GANSS_alm_keplerianBDSAlmanac, create_dissector_handle(dissect_GANSS_ALM_BDSKeplericanset_PDU, proto_pcap)); dissector_add_uint("pcap.extension", id_CellId_MeasuredResultsSets, create_dissector_handle(dissect_CellId_MeasuredResultsSets_PDU, proto_pcap)); dissector_add_uint("pcap.extension", id_OTDOA_MeasurementGroup, create_dissector_handle(dissect_OTDOA_MeasurementGroup_PDU, proto_pcap)); dissector_add_uint("pcap.extension", id_HorizontalAccuracyCode, create_dissector_handle(dissect_HorizontalAccuracyCode_PDU, proto_pcap)); @@ -13705,6 +14789,18 @@ proto_reg_handoff_pcap(void) dissector_add_uint("pcap.extension", id_CellId_IRATMeasuredResultsSets, create_dissector_handle(dissect_CellId_IRATMeasuredResultsSets_PDU, proto_pcap)); dissector_add_uint("pcap.extension", id_IMSI, create_dissector_handle(dissect_IMSI_PDU, proto_pcap)); dissector_add_uint("pcap.extension", id_IMEI, create_dissector_handle(dissect_IMEI_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_BDS_Ionospheric_Grid_Model, create_dissector_handle(dissect_BDS_Ionospheric_Grid_Model_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_DBDS_Correction_Information, create_dissector_handle(dissect_DBDS_Correction_Information_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_BDSIonosphericGridModel, create_dissector_handle(dissect_BDSIonosphericGridModel_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_DBDSCorrection, create_dissector_handle(dissect_DBDSCorrection_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_Confidence, create_dissector_handle(dissect_Confidence_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_ExtraDopplerInfoExtension, create_dissector_handle(dissect_ExtraDopplerInfoExtension_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_GANSS_Confidence, create_dissector_handle(dissect_Confidence_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_GANSS_ExtraDopplerExtension, create_dissector_handle(dissect_GANSS_ExtraDopplerExtension_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_Additional_PositioningDataSet, create_dissector_handle(dissect_Additional_PositioningDataSet_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_Additional_PositioningMethod, create_dissector_handle(dissect_Additional_PositioningMethod_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_AddPos_MeasuredResults, create_dissector_handle(dissect_AddPos_MeasuredResults_PDU, proto_pcap)); + dissector_add_uint("pcap.extension", id_AddPosSupport, create_dissector_handle(dissect_AddPosSupport_PDU, proto_pcap)); dissector_add_uint("pcap.proc.imsg", id_PositionCalculation, create_dissector_handle(dissect_PositionCalculationRequest_PDU, proto_pcap)); dissector_add_uint("pcap.proc.sout", id_PositionCalculation, create_dissector_handle(dissect_PositionCalculationResponse_PDU, proto_pcap)); dissector_add_uint("pcap.proc.uout", id_PositionCalculation, create_dissector_handle(dissect_PositionCalculationFailure_PDU, proto_pcap)); @@ -13748,6 +14844,10 @@ void proto_register_pcap(void) { { "AccuracyFulfilmentIndicator", "pcap.AccuracyFulfilmentIndicator", FT_UINT32, BASE_DEC, VALS(pcap_AccuracyFulfilmentIndicator_vals), 0, NULL, HFILL }}, + { &hf_pcap_AddPos_MeasuredResults_PDU, + { "AddPos-MeasuredResults", "pcap.AddPos_MeasuredResults", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_pcap_Cause_PDU, { "Cause", "pcap.Cause", FT_UINT32, BASE_DEC, VALS(pcap_Cause_vals), 0, @@ -13836,10 +14936,22 @@ void proto_register_pcap(void) { { "GANSS-PositioningDataSet", "pcap.GANSS_PositioningDataSet", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_pcap_Additional_PositioningDataSet_PDU, + { "Additional-PositioningDataSet", "pcap.Additional_PositioningDataSet", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_ExtraDopplerInfoExtension_PDU, + { "ExtraDopplerInfoExtension", "pcap.ExtraDopplerInfoExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_AzimuthAndElevationLSB_PDU, { "AzimuthAndElevationLSB", "pcap.AzimuthAndElevationLSB_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_Confidence_PDU, + { "Confidence", "pcap.Confidence", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GANSS_Additional_Ionospheric_Model_PDU, { "GANSS-Additional-Ionospheric-Model", "pcap.GANSS_Additional_Ionospheric_Model_element", FT_NONE, BASE_NONE, NULL, 0, @@ -13856,6 +14968,10 @@ void proto_register_pcap(void) { { "GANSS-Additional-UTC-Models", "pcap.GANSS_Additional_UTC_Models", FT_UINT32, BASE_DEC, VALS(pcap_GANSS_Additional_UTC_Models_vals), 0, NULL, HFILL }}, + { &hf_pcap_GANSS_ALM_BDSKeplericanset_PDU, + { "GANSS-ALM-BDSKeplericanset", "pcap.GANSS_ALM_BDSKeplericanset_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GANSS_ALM_ECEFsbasAlmanacSet_PDU, { "GANSS-ALM-ECEFsbasAlmanacSet", "pcap.GANSS_ALM_ECEFsbasAlmanacSet_element", FT_NONE, BASE_NONE, NULL, 0, @@ -13888,10 +15004,22 @@ void proto_register_pcap(void) { { "GANSS-Earth-Orientation-Parameters", "pcap.GANSS_Earth_Orientation_Parameters_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_GANSS_ExtraDopplerExtension_PDU, + { "GANSS-ExtraDopplerExtension", "pcap.GANSS_ExtraDopplerExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GANSS_GenericAssistanceDataList_PDU, { "GANSS-GenericAssistanceDataList", "pcap.GANSS_GenericAssistanceDataList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_pcap_BDS_Ionospheric_Grid_Model_PDU, + { "BDS-Ionospheric-Grid-Model", "pcap.BDS_Ionospheric_Grid_Model_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_DBDS_Correction_Information_PDU, + { "DBDS-Correction-Information", "pcap.DBDS_Correction_Information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GanssCodePhaseAmbiguityExt_PDU, { "GanssCodePhaseAmbiguityExt", "pcap.GanssCodePhaseAmbiguityExt_element", FT_NONE, BASE_NONE, NULL, 0, @@ -13960,6 +15088,14 @@ void proto_register_pcap(void) { { "GANSSReq-EarthOrientPara", "pcap.GANSSReq_EarthOrientPara", FT_BOOLEAN, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_BDSIonosphericGridModel_PDU, + { "BDSIonosphericGridModel", "pcap.BDSIonosphericGridModel", + FT_BOOLEAN, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_DBDSCorrection_PDU, + { "DBDSCorrection", "pcap.DBDSCorrection_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GANSS_AddNavigationModel_Req_PDU, { "GANSS-AddNavigationModel-Req", "pcap.GANSS_AddNavigationModel_Req", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -14052,6 +15188,10 @@ void proto_register_pcap(void) { { "GNSS-PositioningMethod", "pcap.GNSS_PositioningMethod", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_Additional_PositioningMethod_PDU, + { "Additional-PositioningMethod", "pcap.Additional_PositioningMethod", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_PositioningPriority_PDU, { "PositioningPriority", "pcap.PositioningPriority", FT_UINT32, BASE_DEC, VALS(pcap_PositioningPriority_vals), 0, @@ -14080,6 +15220,10 @@ void proto_register_pcap(void) { { "NetworkAssistedGANSSSupport", "pcap.NetworkAssistedGANSSSupport", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_pcap_AddPosSupport_PDU, + { "AddPosSupport", "pcap.AddPosSupport", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_pcap_GANSS_SBAS_IDs_PDU, { "GANSS-SBAS-IDs", "pcap.GANSS_SBAS_IDs_element", FT_NONE, BASE_NONE, NULL, 0, @@ -14316,6 +15460,118 @@ void proto_register_pcap(void) { { "value", "pcap.value_element", FT_NONE, BASE_NONE, NULL, 0, "T_private_value", HFILL }}, + { &hf_pcap_AddPos_MeasuredResults_item, + { "AddPos-MeasuredResults-Element", "pcap.AddPos_MeasuredResults_Element_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_timestamp, + { "timestamp", "pcap.timestamp", + FT_STRING, BASE_NONE, NULL, 0, + "UTCTime", HFILL }}, + { &hf_pcap_type, + { "type", "pcap.type", + FT_UINT32, BASE_DEC, VALS(pcap_T_type_vals), 0, + NULL, HFILL }}, + { &hf_pcap_barometricPressure, + { "barometricPressure", "pcap.barometricPressure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_uncompensatedBarometricPressure, + { "uncompensatedBarometricPressure", "pcap.uncompensatedBarometricPressure", + FT_UINT32, BASE_DEC, NULL, 0, + "BaroMeasurement", HFILL }}, + { &hf_pcap_iE_Extensions, + { "iE-Extensions", "pcap.iE_Extensions", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolExtensionContainer", HFILL }}, + { &hf_pcap_wlan, + { "wlan", "pcap.wlan_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_wlanMeasurementList, + { "wlanMeasurementList", "pcap.wlanMeasurementList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_bt, + { "bt", "pcap.bt_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_btMeasurementList, + { "btMeasurementList", "pcap.btMeasurementList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_mbs, + { "mbs", "pcap.mbs_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_mbsMeasurementList, + { "mbsMeasurementList", "pcap.mbsMeasurementList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_WLANMeasurementList_item, + { "WLANMeasurementList-Element", "pcap.WLANMeasurementList_Element_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_wlanBSSID, + { "wlanBSSID", "pcap.wlanBSSID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_6", HFILL }}, + { &hf_pcap_wlanSSID, + { "wlanSSID", "pcap.wlanSSID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_32", HFILL }}, + { &hf_pcap_wlanRSSI, + { "wlanRSSI", "pcap.wlanRSSI", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_pcap_wlanRTTvalue, + { "wlanRTTvalue", "pcap.wlanRTTvalue", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16777215", HFILL }}, + { &hf_pcap_wlanRTTunits, + { "wlanRTTunits", "pcap.wlanRTTunits", + FT_UINT32, BASE_DEC, VALS(pcap_T_wlanRTTunits_vals), 0, + NULL, HFILL }}, + { &hf_pcap_wlanRTTaccuracy, + { "wlanRTTaccuracy", "pcap.wlanRTTaccuracy", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_pcap_wlanAPChannelFrequency, + { "wlanAPChannelFrequency", "pcap.wlanAPChannelFrequency", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_256", HFILL }}, + { &hf_pcap_wlanServingFlag, + { "wlanServingFlag", "pcap.wlanServingFlag", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_pcap_BTMeasurementList_item, + { "BTMeasurementList-Element", "pcap.BTMeasurementList_Element_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_btADDR, + { "btADDR", "pcap.btADDR", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_6", HFILL }}, + { &hf_pcap_btRSSI, + { "btRSSI", "pcap.btRSSI", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_pcap_MBSMeasurementList_item, + { "MBSMeasurementList-Element", "pcap.MBSMeasurementList_Element_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_transmitterID, + { "transmitterID", "pcap.transmitterID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_32767", HFILL }}, + { &hf_pcap_codephase, + { "codephase", "pcap.codephase", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2097151", HFILL }}, + { &hf_pcap_codephaseRMS, + { "codephaseRMS", "pcap.codephaseRMS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, { &hf_pcap_gpsAlmanacAndSatelliteHealth, { "gpsAlmanacAndSatelliteHealth", "pcap.gpsAlmanacAndSatelliteHealth_element", FT_NONE, BASE_NONE, NULL, 0, @@ -14328,10 +15584,6 @@ void proto_register_pcap(void) { { "lsbTOW", "pcap.lsbTOW", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_8", HFILL }}, - { &hf_pcap_iE_Extensions, - { "iE-Extensions", "pcap.iE_Extensions", - FT_UINT32, BASE_DEC, NULL, 0, - "ProtocolExtensionContainer", HFILL }}, { &hf_pcap_radioNetwork, { "radioNetwork", "pcap.radioNetwork", FT_UINT32, BASE_DEC|BASE_EXT_STRING, &pcap_CauseRadioNetwork_vals_ext, 0, @@ -14832,6 +16084,10 @@ void proto_register_pcap(void) { { "PositioningMethodAndUsage", "pcap.PositioningMethodAndUsage", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_Additional_PositioningDataSet_item, + { "Additional-PositioningMethodAndUsage", "pcap.Additional_PositioningMethodAndUsage", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_gps_TOW_1msec, { "gps-TOW-1msec", "pcap.gps_TOW_1msec", FT_UINT32, BASE_DEC, NULL, 0, @@ -14880,6 +16136,10 @@ void proto_register_pcap(void) { { "dopplerUncertainty", "pcap.dopplerUncertainty", FT_UINT32, BASE_DEC, VALS(pcap_DopplerUncertainty_vals), 0, NULL, HFILL }}, + { &hf_pcap_dopplerUncertaintyExtension, + { "dopplerUncertaintyExtension", "pcap.dopplerUncertaintyExtension", + FT_UINT32, BASE_DEC, VALS(pcap_DopplerUncertaintyExtension_vals), 0, + NULL, HFILL }}, { &hf_pcap_azimuth, { "azimuth", "pcap.azimuth", FT_UINT32, BASE_DEC, NULL, 0, @@ -15048,6 +16308,10 @@ void proto_register_pcap(void) { { "sbasClockModel", "pcap.sbasClockModel_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_bDSClockModel, + { "bDSClockModel", "pcap.bDSClockModel_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_pcap_navKeplerianSet, { "navKeplerianSet", "pcap.navKeplerianSet_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15064,6 +16328,10 @@ void proto_register_pcap(void) { { "sbasECEF", "pcap.sbasECEF_element", FT_NONE, BASE_NONE, NULL, 0, "NavModel_SBASecef", HFILL }}, + { &hf_pcap_bDSKeplerianSet, + { "bDSKeplerianSet", "pcap.bDSKeplerianSet_element", + FT_NONE, BASE_NONE, NULL, 0, + "NavModel_BDSKeplerianSet", HFILL }}, { &hf_pcap_dataID, { "dataID", "pcap.dataID", FT_BYTES, BASE_NONE, NULL, 0, @@ -15096,6 +16364,66 @@ void proto_register_pcap(void) { { "utcModel3", "pcap.utcModel3_element", FT_NONE, BASE_NONE, NULL, 0, "UTCmodelSet3", HFILL }}, + { &hf_pcap_utcModel4, + { "utcModel4", "pcap.utcModel4_element", + FT_NONE, BASE_NONE, NULL, 0, + "UTCmodelSet4", HFILL }}, + { &hf_pcap_satellite_Information_BDS_KP_List, + { "satellite-Information-BDS-KP-List", "pcap.satellite_Information_BDS_KP_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_Satellite_Information_BDS_KP_List_item, + { "Satellite-Information-BDS-KP-Item", "pcap.Satellite_Information_BDS_KP_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_sVID_BDS, + { "sVID-BDS", "pcap.sVID_BDS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_pcap_tOA_BDS, + { "tOA-BDS", "pcap.tOA_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_pcap_a21_BDS, + { "a21-BDS", "pcap.a21_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_e_BDS, + { "e-BDS", "pcap.e_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_17", HFILL }}, + { &hf_pcap_omg_lower_BDS, + { "omg-lower-BDS", "pcap.omg_lower_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_m0_BDS, + { "m0-BDS", "pcap.m0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_omg_0_BDS, + { "omg-0-BDS", "pcap.omg_0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_omg_upper_BDS, + { "omg-upper-BDS", "pcap.omg_upper_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_17", HFILL }}, + { &hf_pcap_delta_i_BDS, + { "delta-i-BDS", "pcap.delta_i_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_pcap_a0_BDS, + { "a0-BDS", "pcap.a0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_11", HFILL }}, + { &hf_pcap_a1_BDS, + { "a1-BDS", "pcap.a1_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_11", HFILL }}, + { &hf_pcap_hea_BDS, + { "hea-BDS", "pcap.hea_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_9", HFILL }}, { &hf_pcap_sat_info_SBASecefList, { "sat-info-SBASecefList", "pcap.sat_info_SBASecefList", FT_UINT32, BASE_DEC, NULL, 0, @@ -15228,6 +16556,10 @@ void proto_register_pcap(void) { { "dopplerUncertainty", "pcap.dopplerUncertainty", FT_UINT32, BASE_DEC, VALS(pcap_T_dopplerUncertainty_vals), 0, NULL, HFILL }}, + { &hf_pcap_dopplerUncertaintyExtension_01, + { "dopplerUncertaintyExtension", "pcap.dopplerUncertaintyExtension", + FT_UINT32, BASE_DEC, VALS(pcap_T_dopplerUncertaintyExtension_vals), 0, + NULL, HFILL }}, { &hf_pcap_GANSS_GenericAssistanceDataList_item, { "GANSSGenericAssistanceData", "pcap.GANSSGenericAssistanceData_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15268,6 +16600,66 @@ void proto_register_pcap(void) { { "ganss-Navigation-Model", "pcap.ganss_Navigation_Model_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_bDS_Reference_Time, + { "bDS-Reference-Time", "pcap.bDS_Reference_Time", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_bDS_Ionospheric_Grid_Information, + { "bDS-Ionospheric-Grid-Information", "pcap.bDS_Ionospheric_Grid_Information", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_BDS_Ionospheric_Grid_Information_item, + { "BDS-Ionospheric-Grid-Information item", "pcap.BDS_Ionospheric_Grid_Information_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_iGP_number_BDS, + { "iGP-number-BDS", "pcap.iGP_number_BDS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_320", HFILL }}, + { &hf_pcap_vertical_Delay_BDS, + { "vertical-Delay-BDS", "pcap.vertical_Delay_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_9", HFILL }}, + { &hf_pcap_gIVEI_BDS, + { "gIVEI-BDS", "pcap.gIVEI_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_pcap_dBDS_Information, + { "dBDS-Information", "pcap.dBDS_Information", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_DBDS_Information_item, + { "DBDS-Information item", "pcap.DBDS_Information_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_dBDS_Signal_ID, + { "dBDS-Signal-ID", "pcap.dBDS_Signal_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + "GANSSID", HFILL }}, + { &hf_pcap_dGANSS_Signal_Information, + { "dGANSS-Signal-Information", "pcap.dGANSS_Signal_Information", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_DGANSS_Signal_Information_item, + { "DGANSS-Signal-Information item", "pcap.DGANSS_Signal_Information_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_sat_ID_BDS, + { "sat-ID-BDS", "pcap.sat_ID_BDS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_pcap_uDREI_BDS, + { "uDREI-BDS", "pcap.uDREI_BDS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_pcap_rURAI_BDS, + { "rURAI-BDS", "pcap.rURAI_BDS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_pcap_delta_t_BDS, + { "delta-t-BDS", "pcap.delta_t_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_13", HFILL }}, { &hf_pcap_GANSS_GenericMeasurementInfo_item, { "GANSS-GenericMeasurementInfo item", "pcap.GANSS_GenericMeasurementInfo_item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15303,15 +16695,15 @@ void proto_register_pcap(void) { { &hf_pcap_alpha_zero_ionos, { "alpha-zero-ionos", "pcap.alpha_zero_ionos", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_12", HFILL }}, + "BIT_STRING_SIZE_11", HFILL }}, { &hf_pcap_alpha_one_ionos, { "alpha-one-ionos", "pcap.alpha_one_ionos", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_12", HFILL }}, + "BIT_STRING_SIZE_11", HFILL }}, { &hf_pcap_alpha_two_ionos, { "alpha-two-ionos", "pcap.alpha_two_ionos", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_12", HFILL }}, + "BIT_STRING_SIZE_14", HFILL }}, { &hf_pcap_gANSS_IonosphereRegionalStormFlags, { "gANSS-IonosphereRegionalStormFlags", "pcap.gANSS_IonosphereRegionalStormFlags_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15336,10 +16728,14 @@ void proto_register_pcap(void) { { "storm-flag-five", "pcap.storm_flag_five", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_pcap_t_oa_01, + { "t-oa", "pcap.t_oa", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, { &hf_pcap_iod_a, { "iod-a", "pcap.iod_a", FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_3", HFILL }}, + "INTEGER_0_15", HFILL }}, { &hf_pcap_gANSS_SatelliteInformationKP, { "gANSS-SatelliteInformationKP", "pcap.gANSS_SatelliteInformationKP", FT_UINT32, BASE_DEC, NULL, 0, @@ -15539,19 +16935,23 @@ void proto_register_pcap(void) { { &hf_pcap_a_i2, { "a-i2", "pcap.a_i2", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_12", HFILL }}, + "BIT_STRING_SIZE_6", HFILL }}, { &hf_pcap_a_i1, { "a-i1", "pcap.a_i1", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_18", HFILL }}, + "BIT_STRING_SIZE_21", HFILL }}, { &hf_pcap_a_i0, { "a-i0", "pcap.a_i0", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_28", HFILL }}, + "BIT_STRING_SIZE_31", HFILL }}, { &hf_pcap_t_gd, { "t-gd", "pcap.t_gd", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_10", HFILL }}, + { &hf_pcap_sisa, + { "sisa", "pcap.sisa", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, { &hf_pcap_model_id, { "model-id", "pcap.model_id", FT_UINT32, BASE_DEC, NULL, 0, @@ -15604,14 +17004,18 @@ void proto_register_pcap(void) { { "ganss-omegadot-alm", "pcap.ganss_omegadot_alm", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_11", HFILL }}, - { &hf_pcap_ganss_svhealth_alm, - { "ganss-svhealth-alm", "pcap.ganss_svhealth_alm", + { &hf_pcap_ganss_svStatusINAV_alm, + { "ganss-svStatusINAV-alm", "pcap.ganss_svStatusINAV_alm", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_4", HFILL }}, + { &hf_pcap_ganss_svStatusFNAV_alm, + { "ganss-svStatusFNAV-alm", "pcap.ganss_svStatusFNAV_alm", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_2", HFILL }}, { &hf_pcap_ganss_delta_a_sqrt_alm, { "ganss-delta-a-sqrt-alm", "pcap.ganss_delta_a_sqrt_alm", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_17", HFILL }}, + "BIT_STRING_SIZE_13", HFILL }}, { &hf_pcap_ganss_omegazero_alm, { "ganss-omegazero-alm", "pcap.ganss_omegazero_alm", FT_BYTES, BASE_NONE, NULL, 0, @@ -15627,11 +17031,11 @@ void proto_register_pcap(void) { { &hf_pcap_ganss_af_zero_alm, { "ganss-af-zero-alm", "pcap.ganss_af_zero_alm", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_14", HFILL }}, + "BIT_STRING_SIZE_16", HFILL }}, { &hf_pcap_ganss_af_one_alm, { "ganss-af-one-alm", "pcap.ganss_af_one_alm", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_11", HFILL }}, + "BIT_STRING_SIZE_13", HFILL }}, { &hf_pcap_GANSS_SAT_Info_Almanac_GLOkpList_item, { "GANSS-SAT-Info-Almanac-GLOkp", "pcap.GANSS_SAT_Info_Almanac_GLOkp_element", FT_NONE, BASE_NONE, NULL, 0, @@ -15879,7 +17283,7 @@ void proto_register_pcap(void) { { &hf_pcap_svHealth_01, { "svHealth", "pcap.svHealth", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_5", HFILL }}, + "BIT_STRING_SIZE_9", HFILL }}, { &hf_pcap_iod_01, { "iod", "pcap.iod", FT_BYTES, BASE_NONE, NULL, 0, @@ -16228,6 +17632,78 @@ void proto_register_pcap(void) { { "sbasZgDotDot", "pcap.sbasZgDotDot", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_10", HFILL }}, + { &hf_pcap_uRAIndex_BDS, + { "uRAIndex-BDS", "pcap.uRAIndex_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_pcap_tOA_BDS_01, + { "tOA-BDS", "pcap.tOA_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_17", HFILL }}, + { &hf_pcap_a1_2_BDS, + { "a1-2-BDS", "pcap.a1_2_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_e_BDS_01, + { "e-BDS", "pcap.e_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_oMG_BDS, + { "oMG-BDS", "pcap.oMG_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_dLTn_BDS, + { "dLTn-BDS", "pcap.dLTn_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_pcap_m0_BDS_01, + { "m0-BDS", "pcap.m0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_oMG0_BDS, + { "oMG0-BDS", "pcap.oMG0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_oMGdot_BDS, + { "oMGdot-BDS", "pcap.oMGdot_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_i0_BDS, + { "i0-BDS", "pcap.i0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_iDOT_BDS, + { "iDOT-BDS", "pcap.iDOT_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_14", HFILL }}, + { &hf_pcap_cuc_BDS, + { "cuc-BDS", "pcap.cuc_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_cus_BDS, + { "cus-BDS", "pcap.cus_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_crc_BDS, + { "crc-BDS", "pcap.crc_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_crs_BDS, + { "crs-BDS", "pcap.crs_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_cic_BDS, + { "cic-BDS", "pcap.cic_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_cis_BDS, + { "cis-BDS", "pcap.cis_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_18", HFILL }}, + { &hf_pcap_aODE_BDS, + { "aODE-BDS", "pcap.aODE_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, { &hf_pcap_sbasAgfo, { "sbasAgfo", "pcap.sbasAgfo", FT_BYTES, BASE_NONE, NULL, 0, @@ -16236,6 +17712,30 @@ void proto_register_pcap(void) { { "sbasAgf1", "pcap.sbasAgf1", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_8", HFILL }}, + { &hf_pcap_toc_BDS, + { "toc-BDS", "pcap.toc_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_17", HFILL }}, + { &hf_pcap_a0_BDS_01, + { "a0-BDS", "pcap.a0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_a1_BDS_01, + { "a1-BDS", "pcap.a1_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_22", HFILL }}, + { &hf_pcap_a2_BDS, + { "a2-BDS", "pcap.a2_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_11", HFILL }}, + { &hf_pcap_tGD1_BDS, + { "tGD1-BDS", "pcap.tGD1_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_10", HFILL }}, + { &hf_pcap_aODC_BDS, + { "aODC-BDS", "pcap.aODC_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, { &hf_pcap_utcA0, { "utcA0", "pcap.utcA0", FT_BYTES, BASE_NONE, NULL, 0, @@ -16312,6 +17812,30 @@ void proto_register_pcap(void) { { "utcStandardID", "pcap.utcStandardID", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_3", HFILL }}, + { &hf_pcap_utca0_BDS, + { "utca0-BDS", "pcap.utca0_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_pcap_utca1_BDS, + { "utca1-BDS", "pcap.utca1_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_pcap_utcDeltatLS_BDS, + { "utcDeltatLS-BDS", "pcap.utcDeltatLS_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_pcap_utcWNlsf_BDS, + { "utcWNlsf-BDS", "pcap.utcWNlsf_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_pcap_utcDN_BDS, + { "utcDN-BDS", "pcap.utcDN_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_pcap_utcDeltaTlsf_BDS, + { "utcDeltaTlsf-BDS", "pcap.utcDeltaTlsf_BDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, { &hf_pcap_utran_GANSSTimingOfCellFrames, { "utran-GANSSTimingOfCellFrames", "pcap.utran_GANSSTimingOfCellFrames", FT_UINT32, BASE_DEC, NULL, 0, @@ -16780,6 +18304,10 @@ void proto_register_pcap(void) { { "ganssNavigationModelAdditionalData", "pcap.ganssNavigationModelAdditionalData_element", FT_NONE, BASE_NONE, NULL, 0, "NavigationModelGANSS", HFILL }}, + { &hf_pcap_dGANSSSignalBDS, + { "dGANSSSignalBDS", "pcap.dGANSSSignalBDS", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, { &hf_pcap_orbitModelID, { "orbitModelID", "pcap.orbitModelID", FT_UINT32, BASE_DEC, NULL, 0, @@ -16816,7 +18344,7 @@ void proto_register_pcap(void) { { "ganssSatelliteInfo item", "pcap.ganssSatelliteInfo_item", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_63", HFILL }}, - { &hf_pcap_type, + { &hf_pcap_type_01, { "type", "pcap.type", FT_UINT32, BASE_DEC, VALS(pcap_InformationReportCharacteristicsType_vals), 0, "InformationReportCharacteristicsType", HFILL }}, @@ -16972,6 +18500,14 @@ void proto_register_pcap(void) { { "ganss-SBAS-ID", "pcap.ganss_SBAS_ID", FT_UINT32, BASE_DEC, VALS(pcap_GANSS_SBAS_ID_vals), 0, NULL, HFILL }}, + { &hf_pcap_dBDS_Corrections, + { "dBDS-Corrections", "pcap.dBDS_Corrections_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_bDS_Ionospheric_Grid_Model_Request, + { "bDS-Ionospheric-Grid-Model-Request", "pcap.bDS_Ionospheric_Grid_Model_Request", + FT_UINT32, BASE_DEC, VALS(pcap_BDS_Ionospheric_Grid_Model_Request_vals), 0, + NULL, HFILL }}, { &hf_pcap_ganssWeek, { "ganssWeek", "pcap.ganssWeek", FT_UINT32, BASE_DEC, NULL, 0, @@ -16992,6 +18528,10 @@ void proto_register_pcap(void) { { "AddSatelliteRelatedDataGANSS", "pcap.AddSatelliteRelatedDataGANSS_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_pcap_dGANSS_Signal, + { "dGANSS-Signal", "pcap.dGANSS_Signal", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, { &hf_pcap_ganssTimeModelGnssGnssExt, { "ganssTimeModelGnssGnssExt", "pcap.ganssTimeModelGnssGnssExt", FT_BYTES, BASE_NONE, NULL, 0, @@ -17316,6 +18856,18 @@ void proto_register_pcap(void) { { "supportGANSSCarrierPhaseMeasurement", "pcap.supportGANSSCarrierPhaseMeasurement", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_pcap_AddPosSupport_item, + { "AddPosSupport-Element", "pcap.AddPosSupport_Element_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_pcap_addPosID, + { "addPosID", "pcap.addPosID", + FT_UINT32, BASE_DEC, VALS(pcap_T_addPosID_vals), 0, + NULL, HFILL }}, + { &hf_pcap_addPosMode, + { "addPosMode", "pcap.addPosMode", + FT_UINT32, BASE_DEC, VALS(pcap_T_addPosMode_vals), 0, + NULL, HFILL }}, { &hf_pcap_ganss_sbas_ids, { "ganss-sbas-ids", "pcap.ganss_sbas_ids", FT_BYTES, BASE_NONE, NULL, 0, @@ -18323,6 +19875,19 @@ void proto_register_pcap(void) { &ett_pcap_ProtocolExtensionField, &ett_pcap_PrivateIE_Container, &ett_pcap_PrivateIE_Field, + &ett_pcap_AddPos_MeasuredResults, + &ett_pcap_AddPos_MeasuredResults_Element, + &ett_pcap_T_type, + &ett_pcap_T_barometricPressure, + &ett_pcap_T_wlan, + &ett_pcap_T_bt, + &ett_pcap_T_mbs, + &ett_pcap_WLANMeasurementList, + &ett_pcap_WLANMeasurementList_Element, + &ett_pcap_BTMeasurementList, + &ett_pcap_BTMeasurementList_Element, + &ett_pcap_MBSMeasurementList, + &ett_pcap_MBSMeasurementList_Element, &ett_pcap_AlmanacAndSatelliteHealthSIB, &ett_pcap_Cause, &ett_pcap_CellId_MeasuredResultsSets, @@ -18377,10 +19942,12 @@ void proto_register_pcap(void) { &ett_pcap_PositionData, &ett_pcap_GANSS_PositioningDataSet, &ett_pcap_PositioningDataSet, + &ett_pcap_Additional_PositioningDataSet, &ett_pcap_GPS_AcquisitionAssistance, &ett_pcap_AcquisitionSatInfoList, &ett_pcap_AcquisitionSatInfo, &ett_pcap_ExtraDopplerInfo, + &ett_pcap_ExtraDopplerInfoExtension, &ett_pcap_AzimuthAndElevation, &ett_pcap_AzimuthAndElevationLSB, &ett_pcap_AuxInfoGANSS_ID1, @@ -18400,6 +19967,9 @@ void proto_register_pcap(void) { &ett_pcap_GANSS_Additional_Navigation_Models, &ett_pcap_GANSS_Additional_Time_Models, &ett_pcap_GANSS_Additional_UTC_Models, + &ett_pcap_GANSS_ALM_BDSKeplericanset, + &ett_pcap_Satellite_Information_BDS_KP_List, + &ett_pcap_Satellite_Information_BDS_KP_Item, &ett_pcap_GANSS_ALM_ECEFsbasAlmanacSet, &ett_pcap_GANSS_ALM_GlonassAlmanacSet, &ett_pcap_GANSS_ALM_MidiAlmanacSet, @@ -18418,8 +19988,17 @@ void proto_register_pcap(void) { &ett_pcap_GANSS_DataBitAssistanceSgnItem, &ett_pcap_GANSS_Earth_Orientation_Parameters, &ett_pcap_GANSS_ExtraDoppler, + &ett_pcap_GANSS_ExtraDopplerExtension, &ett_pcap_GANSS_GenericAssistanceDataList, &ett_pcap_GANSSGenericAssistanceData, + &ett_pcap_BDS_Ionospheric_Grid_Model, + &ett_pcap_BDS_Ionospheric_Grid_Information, + &ett_pcap_BDS_Ionospheric_Grid_Information_item, + &ett_pcap_DBDS_Correction_Information, + &ett_pcap_DBDS_Information, + &ett_pcap_DBDS_Information_item, + &ett_pcap_DGANSS_Signal_Information, + &ett_pcap_DGANSS_Signal_Information_item, &ett_pcap_GANSS_GenericMeasurementInfo, &ett_pcap_GANSS_GenericMeasurementInfo_item, &ett_pcap_GANSSID, @@ -18473,10 +20052,13 @@ void proto_register_pcap(void) { &ett_pcap_NavModel_GLONASSecef, &ett_pcap_NavModel_NAVKeplerianSet, &ett_pcap_NavModel_SBASecef, + &ett_pcap_NavModel_BDSKeplerianSet, &ett_pcap_SBASclockModel, + &ett_pcap_BDSClockModel, &ett_pcap_UTCmodelSet1, &ett_pcap_UTCmodelSet2, &ett_pcap_UTCmodelSet3, + &ett_pcap_UTCmodelSet4, &ett_pcap_UTRAN_GANSSReferenceTimeDL, &ett_pcap_UTRAN_GANSSReferenceTimeUL, &ett_pcap_GPS_AlmanacAndSatelliteHealth, @@ -18504,6 +20086,7 @@ void proto_register_pcap(void) { &ett_pcap_GANSSReq_AddIonosphericModel, &ett_pcap_GanssRequestedGenericAssistanceDataList, &ett_pcap_GanssReqGenericData, + &ett_pcap_DBDSCorrection, &ett_pcap_GANSS_AddADchoices, &ett_pcap_GanssDataBits, &ett_pcap_ReqDataBitAssistanceList, @@ -18523,6 +20106,7 @@ void proto_register_pcap(void) { &ett_pcap_AddNavigationModelsGANSS, &ett_pcap_AddSatelliteRelatedDataListGANSS, &ett_pcap_AddSatelliteRelatedDataGANSS, + &ett_pcap_DBDS_Corrections, &ett_pcap_GANSS_AddUtcModelsReq, &ett_pcap_GANSS_AuxInfoReq, &ett_pcap_Ganss_utcModelReq, @@ -18572,6 +20156,8 @@ void proto_register_pcap(void) { &ett_pcap_UE_PositioningCapability, &ett_pcap_NetworkAssistedGANSSSupport, &ett_pcap_NetworkAssistedGANSSSupport_item, + &ett_pcap_AddPosSupport, + &ett_pcap_AddPosSupport_Element, &ett_pcap_GANSS_SBAS_IDs, &ett_pcap_GANSS_Signal_IDs, &ett_pcap_UTDOAPositioning,