Diameter: Fix Location estimate.

- The AVP should be an OctetString
 - Orientation of major axis should not be multiplied by 2 according to
   the latest standard.

Change-Id: I68532108cc36f4699c10b35ffdbcfaef0c29d9fe
Reviewed-on: https://code.wireshark.org/review/35890
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
Anders Broman 2020-01-21 13:39:02 +01:00 committed by Anders Broman
parent 1fccffdaea
commit b0c5f2230d
2 changed files with 5 additions and 5 deletions

View File

@ -4719,7 +4719,7 @@
<enum name="LAWFUL_INTERCEPT_SERVICES" code="3"/>
</avp>
<avp name="Location-Estimate" code="1242" mandatory="must" may-encrypt="yes" protected="may" vendor-bit="must" vendor-id="TGPP">
<type type-name="UTF8String"/>
<type type-name="OctetString"/>
</avp>
<avp name="Location-Estimate-Type" code="1243" mandatory="may" vendor-bit="must" vendor-id="TGPP">
<type type-name="Enumerated"/>

View File

@ -901,12 +901,12 @@ dissect_geographical_description(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tr
minor_item = proto_tree_add_item(tree, hf_gsm_a_geo_loc_uncertainty_semi_minor, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_item_append_text(minor_item, " (%.1f m)", 10 * (pow(1.1, (double)value) - 1));
offset++;
/* Orientation of major axis octet 12
* allowed value from 0-179 to convert
* to actual degrees multiply by 2.
/* TS 23.032 V15.1.0 (2018-09)
* Orientation of major axis octet 12
* allowed value from 0-179
*/
value = tvb_get_guint8(tvb,offset)&0x7f;
proto_tree_add_uint(tree, hf_gsm_a_geo_loc_orientation_of_major_axis, tvb, offset, 1, value*2);
proto_tree_add_uint(tree, hf_gsm_a_geo_loc_orientation_of_major_axis, tvb, offset, 1, value);
offset++;
/* Confidence */
proto_tree_add_item(tree, hf_gsm_a_geo_loc_confidence, tvb, offset, 1, ENC_BIG_ENDIAN);