LPP: upgrade dissector to v13.0.0

Change-Id: I0b01e48eae8be010175fb7f3aa1208957b871f06
Reviewed-on: https://code.wireshark.org/review/13174
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
This commit is contained in:
Pascal Quantin 2016-01-10 21:01:26 +01:00
parent 9e4c79c153
commit 20f1100312
6 changed files with 2317 additions and 117 deletions

View File

@ -1,4 +1,4 @@
-- 3GPP TS 36.355 V12.4.0 (2015-03)
-- 3GPP TS 36.355 V13.0.0 (2015-12)
--
LPP-PDU-Definitions {
@ -74,7 +74,13 @@ RequestCapabilities-r9-IEs ::= SEQUENCE {
otdoa-RequestCapabilities OTDOA-RequestCapabilities OPTIONAL, -- Need ON
ecid-RequestCapabilities ECID-RequestCapabilities OPTIONAL, -- Need ON
epdu-RequestCapabilities EPDU-Sequence OPTIONAL, -- Need ON
...
...,
[[ sensor-RequestCapabilities-r13 Sensor-RequestCapabilities-r13 OPTIONAL, -- Need ON
tbs-RequestCapabilities-r13 TBS-RequestCapabilities-r13 OPTIONAL, -- Need ON
wlan-RequestCapabilities-r13 WLAN-RequestCapabilities-r13 OPTIONAL, -- Need ON
bt-RequestCapabilities-r13 BT-RequestCapabilities-r13 OPTIONAL -- Need ON
]]
}
@ -94,7 +100,12 @@ ProvideCapabilities-r9-IEs ::= SEQUENCE {
otdoa-ProvideCapabilities OTDOA-ProvideCapabilities OPTIONAL,
ecid-ProvideCapabilities ECID-ProvideCapabilities OPTIONAL,
epdu-ProvideCapabilities EPDU-Sequence OPTIONAL,
...
...,
[[ sensor-ProvideCapabilities-r13 Sensor-ProvideCapabilities-r13 OPTIONAL,
tbs-ProvideCapabilities-r13 TBS-ProvideCapabilities-r13 OPTIONAL,
wlan-ProvideCapabilities-r13 WLAN-ProvideCapabilities-r13 OPTIONAL,
bt-ProvideCapabilities-r13 BT-ProvideCapabilities-r13 OPTIONAL
]]
}
@ -153,7 +164,16 @@ RequestLocationInformation-r9-IEs ::= SEQUENCE {
otdoa-RequestLocationInformation OTDOA-RequestLocationInformation OPTIONAL, -- Need ON
ecid-RequestLocationInformation ECID-RequestLocationInformation OPTIONAL, -- Need ON
epdu-RequestLocationInformation EPDU-Sequence OPTIONAL, -- Need ON
...
...,
[[
sensor-RequestLocationInformation-r13
Sensor-RequestLocationInformation-r13
OPTIONAL, -- Need ON
tbs-RequestLocationInformation-r13 TBS-RequestLocationInformation-r13 OPTIONAL, -- Need ON
wlan-RequestLocationInformation-r13 WLAN-RequestLocationInformation-r13 OPTIONAL, -- Need ON
bt-RequestLocationInformation-r13 BT-RequestLocationInformation-r13 OPTIONAL -- Need ON
]]
}
@ -174,7 +194,16 @@ ProvideLocationInformation-r9-IEs ::= SEQUENCE {
otdoa-ProvideLocationInformation OTDOA-ProvideLocationInformation OPTIONAL,
ecid-ProvideLocationInformation ECID-ProvideLocationInformation OPTIONAL,
epdu-ProvideLocationInformation EPDU-Sequence OPTIONAL,
...
...,
[[
sensor-ProvideLocationInformation-r13
Sensor-ProvideLocationInformation-r13
OPTIONAL,
tbs-ProvideLocationInformation-r13 TBS-ProvideLocationInformation-r13 OPTIONAL,
wlan-ProvideLocationInformation-r13 WLAN-ProvideLocationInformation-r13 OPTIONAL,
bt-ProvideLocationInformation-r13 BT-ProvideLocationInformation-r13 OPTIONAL
]]
}
@ -520,6 +549,9 @@ CommonIEsProvideLocationInformation ::= SEQUENCE {
locationError LocationError OPTIONAL,
...,
[[ earlyFixReport-r12 EarlyFixReport-r12 OPTIONAL
]],
[[ locationSource-r13 LocationSource-r13 OPTIONAL,
locationTimestamp-r13 UTCTime OPTIONAL
]]
}
@ -562,6 +594,12 @@ EarlyFixReport-r12 ::= ENUMERATED {
moreMessagesOnTheWay
}
LocationSource-r13 ::= BIT STRING { a-gnss (0),
wlan (1),
bt (2),
tbs (3),
sensor (4) } (SIZE(1..16))
CommonIEsAbort ::= SEQUENCE {
abortCause ENUMERATED {
@ -1411,7 +1449,7 @@ AlmanacECEF-SBAS-AlmanacSet ::= SEQUENCE {
AlmanacBDS-AlmanacSet-r12 ::= SEQUENCE {
svID SV-ID,
bdsAlmToa-r12 INTEGER (0..255) OPTIONAL, -- Cond NotSameForAllSV
bdsAlmToa-r12 INTEGER (0..255) OPTIONAL, -- Cond NotSameForAllSV
bdsAlmSqrtA-r12 INTEGER (0..16777215),
bdsAlmE-r12 INTEGER (0..131071),
bdsAlmW-r12 INTEGER (-8388608..8388607),
@ -1421,7 +1459,7 @@ AlmanacBDS-AlmanacSet-r12 ::= SEQUENCE {
bdsAlmDeltaI-r12 INTEGER (-32768..32767),
bdsAlmA0-r12 INTEGER (-1024..1023),
bdsAlmA1-r12 INTEGER (-1024..1023),
bdsSvHealth-r12 BIT STRING (SIZE(9)) OPTIONAL, -- Cond SV-ID
bdsSvHealth-r12 BIT STRING (SIZE(9)) OPTIONAL, -- Cond SV-ID
...
}
@ -1608,9 +1646,9 @@ GNSS-GenericAssistDataReqElement ::= SEQUENCE {
GNSS-ReferenceTimeReq ::= SEQUENCE {
gnss-TimeReqPrefList SEQUENCE (SIZE (1..8)) OF GNSS-ID,
gps-TOW-assistReq BOOLEAN OPTIONAL, -- Cond gps
notOfLeapSecReq BOOLEAN OPTIONAL, -- Cond glonass
gnss-TimeReqPrefList SEQUENCE (SIZE (1..8)) OF GNSS-ID,
gps-TOW-assistReq BOOLEAN OPTIONAL, -- Cond gps
notOfLeapSecReq BOOLEAN OPTIONAL, -- Cond glonass
...
}
@ -1667,15 +1705,15 @@ SatListRelatedDataList ::= SEQUENCE (SIZE (1..64)) OF SatListRelatedDataElement
SatListRelatedDataElement ::= SEQUENCE {
svID SV-ID,
iod BIT STRING (SIZE(11)),
clockModelID INTEGER (1..8) OPTIONAL,
orbitModelID INTEGER (1..8) OPTIONAL,
...
iod BIT STRING (SIZE(11)),
clockModelID INTEGER (1..8) OPTIONAL,
orbitModelID INTEGER (1..8) OPTIONAL,
...
}
ReqNavListInfo ::= SEQUENCE {
svReqList BIT STRING (SIZE (64)),
clockModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
clockModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
orbitModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
addNavparamReq BOOLEAN OPTIONAL, -- Cond orbitModelID-2
...
@ -1882,7 +1920,7 @@ GNSS-SupportElement ::= SEQUENCE {
}
AssistanceDataSupportList ::= SEQUENCE {
gnss-CommonAssistanceDataSupport GNSS-CommonAssistanceDataSupport,
gnss-CommonAssistanceDataSupport GNSS-CommonAssistanceDataSupport,
gnss-GenericAssistanceDataSupport GNSS-GenericAssistanceDataSupport,
...
}
@ -1931,7 +1969,7 @@ GNSS-GenericAssistanceDataSupport ::=
GNSS-GenericAssistDataSupportElement ::= SEQUENCE {
gnss-ID GNSS-ID,
sbas-ID SBAS-ID OPTIONAL, -- Cond GNSSIDSBAS
sbas-ID SBAS-ID OPTIONAL, -- Cond GNSS-ID-SBAS
gnss-TimeModelsSupport GNSS-TimeModelListSupport
OPTIONAL, -- Cond TimeModSup
gnss-DifferentialCorrectionsSupport GNSS-DifferentialCorrectionsSupport
@ -2214,4 +2252,268 @@ ECID-TargetDeviceErrorCauses ::= SEQUENCE {
}
TBS-ProvideLocationInformation-r13 ::= SEQUENCE {
tbs-MeasurementList-r13 TBS-MeasurementList-r13 OPTIONAL,
tbs-Error-r13 TBS-Error-r13 OPTIONAL,
...
}
TBS-MeasurementList-r13 ::= SEQUENCE {
measurementReferenceTime-r13 UTCTime OPTIONAL,
mbs-SgnMeasList-r13 MBS-BeaconMeasList-r13 OPTIONAL, -- Cond MBS
...
}
MBS-BeaconMeasList-r13 ::= SEQUENCE (SIZE(1..64)) OF MBS-BeaconMeasElement-r13
MBS-BeaconMeasElement-r13 ::= SEQUENCE {
transmitterID-r13 INTEGER (0..32767),
codePhase-r13 INTEGER (0..2097151),
codePhaseRMSError-r13 INTEGER (0..63),
...
}
TBS-RequestLocationInformation-r13 ::= SEQUENCE {
mbsSgnMeasListReq BOOLEAN,
...
}
TBS-ProvideCapabilities-r13 ::= SEQUENCE {
tbs-Modes-r13 BIT STRING { standalone (0),
ue-assisted (2) } (SIZE (1..8)),
...
}
TBS-RequestCapabilities-r13 ::= SEQUENCE {
...
}
TBS-Error-r13 ::= CHOICE {
locationServerErrorCauses-r13 TBS-LocationServerErrorCauses-r13,
targetDeviceErrorCauses-r13 TBS-TargetDeviceErrorCauses-r13,
...
}
TBS-LocationServerErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED { undefined,
...
},
...
}
TBS-TargetDeviceErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED { undefined,
thereWereNotEnoughMBSBeaconsReceived,
...
},
...
}
Sensor-ProvideLocationInformation-r13 ::= SEQUENCE {
sensor-MeasurementList-r13 Sensor-MeasurementList-r13 OPTIONAL,
sensor-Error-r13 Sensor-Error-r13 OPTIONAL,
...
}
Sensor-MeasurementList-r13 ::= SEQUENCE {
measurementReferenceTime-r13 UTCTime OPTIONAL,
uncompensatedBarometricPressure-r13 INTEGER (30000..115000) OPTIONAL, -- Cond Barometer
...
}
Sensor-RequestLocationInformation-r13 ::= SEQUENCE {
uncompensatedBarometricPressureReq BOOLEAN,
...
}
Sensor-ProvideCapabilities-r13 ::= SEQUENCE {
sensor-Modes-r13 BIT STRING { standalone (0),
ue-assisted (2) } (SIZE (1..8)),
...
}
Sensor-RequestCapabilities-r13 ::= SEQUENCE {
...
}
Sensor-Error-r13 ::= CHOICE {
targetServerErrorCauses-r13 Sensor-LocationServerErrorCauses-r13,
targetDeviceErrorCauses-r13 Sensor-TargetDeviceErrorCauses-r13,
...
}
Sensor-LocationServerErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED { undefined,
...},
...
}
Sensor-TargetDeviceErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED { undefined,
...},
...
}
WLAN-ProvideLocationInformation-r13 ::= SEQUENCE {
wlan-MeasurementList-r13 WLAN-MeasurementList-r13 OPTIONAL,
measurementReferenceTime-r13 UTCTime OPTIONAL,
wlan-Error-r13 WLAN-Error-r13 OPTIONAL,
...
}
WLAN-MeasurementList-r13 ::= SEQUENCE (SIZE(1..maxWLANAPSize-r13)) OF WLAN-MeasurementElement-r13
WLAN-MeasurementElement-r13 ::= SEQUENCE {
wlan-AP-Identifier-r13 WLAN-AP-Identifier-r13,
rssi-r13 INTEGER(-127..128) OPTIONAL,
rtt-r13 WLAN-RTT-r13 OPTIONAL,
apChannelFrequency INTEGER(0..256) OPTIONAL,
servingFlag BOOLEAN OPTIONAL,
...
}
WLAN-AP-Identifier-r13 ::= SEQUENCE {
bssid-r13 OCTET STRING (SIZE (6)),
ssid-r13 OCTET STRING (SIZE (1..32)) OPTIONAL,
...
}
WLAN-RTT-r13 ::= SEQUENCE {
rttValue-r13 INTEGER(0..16777215),
rttUnits-r13 ENUMERATED { microseconds,
hundredsofnanoseconds,
tensofnanoseconds,
nanoseconds,
tenthsofnanoseconds,
... },
rttAccuracy-r13 INTEGER(0..255) OPTIONAL,
...
}
maxWLANAPSize-r13 INTEGER ::= 64
WLAN-RequestLocationInformation-r13 ::= SEQUENCE {
requestedMeasurements-r13 BIT STRING {
rssi (0),
rtt (1)} (SIZE(1..8)),
...
}
WLAN-ProvideCapabilities-r13 ::= SEQUENCE {
wlan-Modes-r13 BIT STRING { standalone (0),
ue-assisted (2)} (SIZE (1..8)),
wlan-MeasSupported-r13 BIT STRING {
rssi-r13 (0),
rtt-r13 (1)} (SIZE(1..8)),
...
}
WLAN-RequestCapabilities-r13 ::= SEQUENCE {
...
}
WLAN-Error-r13 ::= CHOICE {
locationServerErrorCauses-r13 WLAN-LocationServerErrorCauses-r13,
targetDeviceErrorCauses-r13 WLAN-TargetDeviceErrorCauses-r13,
...
}
WLAN-LocationServerErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED {undefined, ...}
}
WLAN-TargetDeviceErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED {undefined,
requestedMeasurementsNotAvailable,
notAllrequestedMeasurementsPossible,
...
},
wlan-AP-RSSI-MeasurementNotPossible-r13 NULL OPTIONAL,
wlan-AP-RTT-MeasurementNotPossible-r13 NULL OPTIONAL,
...
}
BT-ProvideLocationInformation-r13 ::= SEQUENCE {
bt-MeasurementList-r13 BT-MeasurementList-r13 OPTIONAL,
measurementReferenceTime-r13 UTCTime OPTIONAL,
bt-Error-r13 BT-Error-r13 OPTIONAL,
...
}
BT-MeasurementList-r13 ::= SEQUENCE (SIZE(1.. maxBTBeaconSize-r13)) OF BT-MeasurementElement-r13
BT-MeasurementElement-r13 ::= SEQUENCE {
btAddr-r13 BIT STRING (SIZE (48)),
rssi-r13 INTEGER(-128..127) OPTIONAL,
...
}
maxBTBeaconSize-r13 INTEGER ::= 32
BT-RequestLocationInformation-r13 ::= SEQUENCE {
requestedMeasurements-r13 BIT STRING {
rssi (0)} (SIZE(1..8)),
...
}
BT-ProvideCapabilities-r13 ::= SEQUENCE {
bt-Modes-r13 BIT STRING { standalone (0),
ue-assisted (2)} (SIZE (1..8)),
...
}
BT-RequestCapabilities-r13 ::= SEQUENCE {
...
}
BT-Error-r13 ::= CHOICE {
locationServerErrorCauses-r13 BT-LocationServerErrorCauses-r13,
targetDeviceErrorCauses-r13 BT-TargetDeviceErrorCauses-r13,
...
}
BT-LocationServerErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED {undefined, ...}
}
BT-TargetDeviceErrorCauses-r13 ::= SEQUENCE {
cause-r13 ENUMERATED {undefined,
requestedMeasurementsNotAvailable,
notAllrequestedMeasurementsPossible,
...
},
bt-Beacon-rssiMeasurementNotPossible-r13 NULL OPTIONAL,
...
}
END

View File

@ -1,6 +1,6 @@
# lpp.cnf
# lpp conformation file
# Copyright 2011-2015 Pascal Quantin
# Copyright 2011-2016 Pascal Quantin
#.OPT
PER
@ -302,6 +302,32 @@ VerticalAccuracy/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_f
#.FN_FTR ResponseTime/eag_1/responseTimeEarlyFix-r12
proto_item_append_text(actx->created_item, " s");
#.FN_BODY LocationSource-r13 VAL_PTR = &locSource_tvb LEN_PTR = &len
tvbuff_t *locSource_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(locSource_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_LocationSource_r13_a_gnss, locSource_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 2) {
proto_tree_add_item(subtree, hf_lpp_LocationSource_r13_wlan, locSource_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 3) {
proto_tree_add_item(subtree, hf_lpp_LocationSource_r13_bt, locSource_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 4) {
proto_tree_add_item(subtree, hf_lpp_LocationSource_r13_tbs, locSource_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 5) {
proto_tree_add_item(subtree, hf_lpp_LocationSource_r13_sensor, locSource_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.TYPE_ATTR
OTDOA-NeighbourCellInfoElement/expectedRSTD DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_expectedRSTD_fmt)
@ -1629,3 +1655,155 @@ MeasuredResultsElement/ue-RxTxTimeDiff DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_u
proto_tree_add_item(subtree, hf_lpp_T_ecid_MeasSupported_ueRxTxSup, ecid_MeasSupported_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.TYPE_ATTR
MBS-BeaconMeasElement-r13/codePhase-r13 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_mbs_beaconMeasElt_codePhase_fmt)
#.TYPE_ATTR
MBS-BeaconMeasElement-r13/codePhaseRMSError-r13 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_codePhaseRMSError_fmt)
#.FN_BODY TBS-ProvideCapabilities-r13/tbs-Modes-r13 VAL_PTR = &tbs_Modes_tvb LEN_PTR = &len
tvbuff_t *tbs_Modes_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(tbs_Modes_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_tbs_Modes_r13_standalone, tbs_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 3) {
proto_tree_add_item(subtree, hf_lpp_T_tbs_Modes_r13_ue_assisted, tbs_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.FN_FTR Sensor-MeasurementList-r13/uncompensatedBarometricPressure-r13
proto_item_append_text(actx->created_item, " Pa");
#.FN_BODY Sensor-ProvideCapabilities-r13/sensor-Modes-r13 VAL_PTR = &sensor_Modes_tvb LEN_PTR = &len
tvbuff_t *sensor_Modes_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(sensor_Modes_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_sensor_Modes_r13_standalone, sensor_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 3) {
proto_tree_add_item(subtree, hf_lpp_T_sensor_Modes_r13_ue_assisted, sensor_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.FN_FTR WLAN-MeasurementElement-r13/rssi-r13
proto_item_append_text(actx->created_item, " dBm");
#.TYPE_ATTR
WLAN-AP-Identifier-r13/bssid-r13 TYPE=FT_ETHER
#.TYPE_ATTR
WLAN-AP-Identifier-r13/ssid-r13 TYPE=FT_STRING DISPLAY=STR_ASCII
#.FN_BODY WLAN-AP-Identifier-r13/ssid-r13 VAL_PTR=&ssid_tvb HF_INDEX=-1
tvbuff_t *ssid_tvb = NULL;
%(DEFAULT_BODY)s
actx->created_item = proto_tree_add_item(tree, hf_index, ssid_tvb, 0, -1, ENC_ASCII|ENC_NA);
#.FN_BODY WLAN-RequestLocationInformation-r13/requestedMeasurements-r13 VAL_PTR = &requestedMeasurements_tvb LEN_PTR = &len
tvbuff_t *requestedMeasurements_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(requestedMeasurements_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_requestedMeasurements_r13_rssi, requestedMeasurements_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 2) {
proto_tree_add_item(subtree, hf_lpp_T_requestedMeasurements_r13_rtt, requestedMeasurements_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.FN_BODY WLAN-ProvideCapabilities-r13/wlan-Modes-r13 VAL_PTR = &wlan_Modes_tvb LEN_PTR = &len
tvbuff_t *wlan_Modes_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(wlan_Modes_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_wlan_Modes_r13_standalone, wlan_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 3) {
proto_tree_add_item(subtree, hf_lpp_T_wlan_Modes_r13_ue_assisted, wlan_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.FN_BODY WLAN-ProvideCapabilities-r13/wlan-MeasSupported-r13 VAL_PTR = &wlan_MeasSupported_tvb LEN_PTR = &len
tvbuff_t *wlan_MeasSupported_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(wlan_MeasSupported_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_wlan_MeasSupported_r13_rssi_r13, wlan_MeasSupported_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 2) {
proto_tree_add_item(subtree, hf_lpp_T_wlan_MeasSupported_r13_rtt_r13, wlan_MeasSupported_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.TYPE_ATTR
BT-MeasurementElement-r13/btAddr-r13 TYPE=FT_ETHER DISPLAY=BASE_NONE
#.FN_BODY BT-MeasurementElement-r13/btAddr-r13 VAL_PTR=&btAddr_tvb HF_INDEX=-1
tvbuff_t *btAddr_tvb = NULL;
%(DEFAULT_BODY)s
actx->created_item = proto_tree_add_item(tree, hf_index, btAddr_tvb, 0, 6, ENC_NA);
#.FN_FTR BT-MeasurementElement-r13/rssi-r13
proto_item_append_text(actx->created_item, " dBm");
#.FN_BODY BT-RequestLocationInformation-r13/requestedMeasurements-r13 VAL_PTR = &requestedMeasurements_tvb LEN_PTR = &len
tvbuff_t *requestedMeasurements_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(requestedMeasurements_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_requestedMeasurements_r13_01_rssi, requestedMeasurements_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}
#.FN_BODY BT-ProvideCapabilities-r13/bt-Modes-r13 VAL_PTR = &bt_Modes_tvb LEN_PTR = &len
tvbuff_t *bt_Modes_tvb = NULL;
int len;
%(DEFAULT_BODY)s
if(bt_Modes_tvb){
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bitmap);
if (len >= 1) {
proto_tree_add_item(subtree, hf_lpp_T_bt_Modes_r13_standalone, bt_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
if (len >= 3) {
proto_tree_add_item(subtree, hf_lpp_T_bt_Modes_r13_ue_assisted, bt_Modes_tvb, 0, 1, ENC_BIG_ENDIAN);
}
}

View File

@ -1,6 +1,6 @@
/* packet-lpp.c
* Routines for 3GPP LTE Positioning Protocol (LPP) packet dissection
* Copyright 2011-2015 Pascal Quantin <pascal.quantin@gmail.com>
* Copyright 2011-2016 Pascal Quantin <pascal.quantin@gmail.com>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Ref 3GPP TS 36.355 version 12.4.0 Release 12
* Ref 3GPP TS 36.355 version 13.0.0 Release 13
* http://www.3gpp.org
*/
@ -1626,6 +1626,14 @@ lpp_ue_RxTxTimeDiff_fmt(gchar *s, guint32 v)
}
}
static void
lpp_mbs_beaconMeasElt_codePhase_fmt(gchar *s, guint32 v)
{
double codePhase = (double)v*pow(2, -21);
g_snprintf(s, ITEM_LABEL_LENGTH, "%g ms (%u)", codePhase, v);
}
#include "packet-lpp-fn.c"
static int dissect_lpp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {

View File

@ -1,6 +1,6 @@
/* packet-lpp.h
* Routines for 3GPP LTE Positioning Protocol (LPP) packet dissection
* Copyright 2011-2015 Pascal Quantin <pascal.quantin@gmail.com>
* Copyright 2011-2016 Pascal Quantin <pascal.quantin@gmail.com>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Ref 3GPP TS 36.355 version 12.4.0 Release 12
* Ref 3GPP TS 36.355 version 13.0.0 Release 13
* http://www.3gpp.org
*/

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@
#line 1 "../../asn1/lpp/packet-lpp-template.h"
/* packet-lpp.h
* Routines for 3GPP LTE Positioning Protocol (LPP) packet dissection
* Copyright 2011-2015 Pascal Quantin <pascal.quantin@gmail.com>
* Copyright 2011-2016 Pascal Quantin <pascal.quantin@gmail.com>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@ -28,7 +28,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Ref 3GPP TS 36.355 version 12.4.0 Release 12
* Ref 3GPP TS 36.355 version 13.0.0 Release 13
* http://www.3gpp.org
*/