diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2015-03-03 14:26:13 +0100 |
---|---|---|
committer | Pascal Quantin <pascal.quantin@gmail.com> | 2015-03-03 14:51:39 +0000 |
commit | 2780a303ab0e8d293bd9be88b523de1bb02b413c (patch) | |
tree | 442195a052b6f2d6ac33d7bff9e526498edb7f98 /asn1/gsm_map/gsm_map.cnf | |
parent | 8933cbb3e329454cf2c099f2ef5dc3c985f94846 (diff) | |
download | wireshark-2780a303ab0e8d293bd9be88b523de1bb02b413c.tar.gz |
GSM MAP: do not use a global variable to store OID
Fixes an ASAN failure reported by Alexis
Change-Id: I63b07ec4b6eb0698c4abf27f8fb0b1f11a19396d
Reviewed-on: https://code.wireshark.org/review/7510
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'asn1/gsm_map/gsm_map.cnf')
-rw-r--r-- | asn1/gsm_map/gsm_map.cnf | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/asn1/gsm_map/gsm_map.cnf b/asn1/gsm_map/gsm_map.cnf index 9349fe724e..5d95ebf3b9 100644 --- a/asn1/gsm_map/gsm_map.cnf +++ b/asn1/gsm_map/gsm_map.cnf @@ -225,13 +225,15 @@ MAP-DialoguePDU B "0.4.0.0.1.1.1.1" "map-DialogueAS" # End ROS #---------------------------------------------------------------------------------------- -#.FN_PARS PrivateExtension/extId FN_VARIANT = _str VAL_PTR = &obj_id +#.FN_BODY PrivateExtension/extId FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference +%(DEFAULT_BODY)s + actx->external.direct_ref_present = (actx->external.direct_reference != NULL) ? TRUE : FALSE; #.FN_BODY PrivateExtension/extType proto_tree *ext_tree; ext_tree = proto_tree_add_subtree(tree, tvb, offset, -1, ett_gsm_map_extention_data, NULL, "Extension Data"); - if (obj_id){ - offset=call_ber_oid_callback(obj_id, tvb, offset, actx->pinfo, ext_tree, NULL); + if (actx->external.direct_ref_present){ + offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, ext_tree, NULL); }else{ call_dissector(data_handle, tvb, actx->pinfo, ext_tree); offset = tvb_reported_length_remaining(tvb,offset); |