aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndersBroman <anders.broman@ericsson.com>2014-10-03 15:18:44 +0200
committerAnders Broman <a.broman58@gmail.com>2014-10-03 13:28:51 +0000
commit956cfa2cb86aea46bc4fff56464e872c20cf982c (patch)
treee5b8bcb89d03731c244fafa3aa4f4d297088210d
parent6621b1f317e8c1eead34a69fffb75065f42ba9c2 (diff)
LocationNumber digits is off by one(to many).
Bug 10522. Change-Id: I7887f3ee229ac22d2aa37a3d8900d76d8b814ed0 Reviewed-on: https://code.wireshark.org/review/4439 Reviewed-by: Anders Broman <a.broman58@gmail.com>
-rw-r--r--asn1/gsm_map/gsm_map.cnf6
-rw-r--r--epan/dissectors/packet-gsm_map.c6
2 files changed, 6 insertions, 6 deletions
diff --git a/asn1/gsm_map/gsm_map.cnf b/asn1/gsm_map/gsm_map.cnf
index 306594cb50..ea71d3658a 100644
--- a/asn1/gsm_map/gsm_map.cnf
+++ b/asn1/gsm_map/gsm_map.cnf
@@ -960,12 +960,12 @@ if (!actx->value_ptr)
proto_tree_add_item(subtree, hf_gsm_map_locationnumber_apri, tvb, 1, 1, ENC_BIG_ENDIAN);
proto_tree_add_item(subtree, hf_gsm_map_locationnumber_screening_ind, tvb, 1, 1, ENC_BIG_ENDIAN);
- digit_str = tvb_bcd_dig_to_wmem_packet_str(tvb, 1, -1, NULL, FALSE);
+ digit_str = tvb_bcd_dig_to_wmem_packet_str(tvb, 2, -1, NULL, FALSE);
- proto_tree_add_string(tree, hf_gsm_map_locationnumber_digits, tvb, 1, -1, digit_str);
+ proto_tree_add_string(tree, hf_gsm_map_locationnumber_digits, tvb, 2, -1, digit_str);
if ((na == 3) && (np==1))/*International Number & E164*/
- dissect_e164_cc(tvb, tree, 1, E164_ENC_BCD);
+ dissect_e164_cc(tvb, tree, 2, E164_ENC_BCD);
#.FN_BODY EnhancedCheckIMEI-Arg/locationInformation VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c
index 75e263f444..5a6be52ab2 100644
--- a/epan/dissectors/packet-gsm_map.c
+++ b/epan/dissectors/packet-gsm_map.c
@@ -8165,12 +8165,12 @@ dissect_gsm_map_ms_LocationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
proto_tree_add_item(subtree, hf_gsm_map_locationnumber_apri, tvb, 1, 1, ENC_BIG_ENDIAN);
proto_tree_add_item(subtree, hf_gsm_map_locationnumber_screening_ind, tvb, 1, 1, ENC_BIG_ENDIAN);
- digit_str = tvb_bcd_dig_to_wmem_packet_str(tvb, 1, -1, NULL, FALSE);
+ digit_str = tvb_bcd_dig_to_wmem_packet_str(tvb, 2, -1, NULL, FALSE);
- proto_tree_add_string(tree, hf_gsm_map_locationnumber_digits, tvb, 1, -1, digit_str);
+ proto_tree_add_string(tree, hf_gsm_map_locationnumber_digits, tvb, 2, -1, digit_str);
if ((na == 3) && (np==1))/*International Number & E164*/
- dissect_e164_cc(tvb, tree, 1, E164_ENC_BCD);
+ dissect_e164_cc(tvb, tree, 2, E164_ENC_BCD);