From 4319b35e2bdf7aede32db3e81830b68ef37fa4b9 Mon Sep 17 00:00:00 2001 From: Darien Spencer Date: Tue, 15 Aug 2017 19:55:39 +0300 Subject: RNSAP: Call RANAP dissector for RANAP-RelocationInformation This IE is a transparent container of a RANAP message according to TS 25.413 - Section 11.2 Change-Id: I2080c9a75ce2acc947eade9c60b12c49080f8ee8 Reviewed-on: https://code.wireshark.org/review/23085 Reviewed-by: Michael Mann Petri-Dish: Michael Mann Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- epan/dissectors/asn1/rnsap/packet-rnsap-template.c | 2 ++ epan/dissectors/asn1/rnsap/rnsap.cnf | 12 ++++++++++++ 2 files changed, 14 insertions(+) (limited to 'epan/dissectors/asn1/rnsap') diff --git a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c index 9850a94fc9..48b6a0f15a 100644 --- a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c +++ b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c @@ -50,6 +50,7 @@ void proto_register_rnsap(void); void proto_reg_handoff_rnsap(void); +static dissector_handle_t ranap_handle = NULL; static dissector_handle_t rrc_dl_ccch_handle = NULL; static dissector_handle_t rrc_ul_ccch_handle = NULL; @@ -177,6 +178,7 @@ void proto_register_rnsap(void) { void proto_reg_handoff_rnsap(void) { + ranap_handle = find_dissector("ranap"); rrc_dl_ccch_handle = find_dissector_add_dependency("rrc.dl.ccch", proto_rnsap); rrc_ul_ccch_handle = find_dissector_add_dependency("rrc.ul.ccch", proto_rnsap); diff --git a/epan/dissectors/asn1/rnsap/rnsap.cnf b/epan/dissectors/asn1/rnsap/rnsap.cnf index 9b374e951d..fc298a1fcd 100644 --- a/epan/dissectors/asn1/rnsap/rnsap.cnf +++ b/epan/dissectors/asn1/rnsap/rnsap.cnf @@ -135,6 +135,18 @@ ProtocolIE-ContainerPairList #.FN_PARS PrivateIE-ID/global FN_VARIANT = _str VAL_PTR = &obj_id +#.FN_BODY RANAP-RelocationInformation VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb=NULL; + +%(DEFAULT_BODY)s + + if (!parameter_tvb) + return offset; + + /* Calling RANAP dissector but preventing changes to the protocol column */ + col_set_writable(actx->pinfo->cinfo, COL_PROTOCOL, FALSE); + call_dissector_only(ranap_handle, parameter_tvb, actx->pinfo, tree, NULL); + col_set_writable(actx->pinfo->cinfo, COL_PROTOCOL, TRUE); #.TYPE_ATTR BLER TYPE = FT_INT32 DISPLAY = BASE_DEC STRINGS = NULL -- cgit v1.2.3