From d7d1840e678192d3329227fed87816944042e4f7 Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Tue, 6 Nov 2012 19:33:27 +0000 Subject: Fix dissection of NAS security parameters to/from E-UTRA svn path=/trunk/; revision=45950 --- asn1/lte-rrc/lte-rrc.cnf | 22 ++++++++++++---------- asn1/lte-rrc/packet-lte-rrc-template.c | 1 + 2 files changed, 13 insertions(+), 10 deletions(-) (limited to 'asn1') diff --git a/asn1/lte-rrc/lte-rrc.cnf b/asn1/lte-rrc/lte-rrc.cnf index 264ace2ff8..3544e2e414 100644 --- a/asn1/lte-rrc/lte-rrc.cnf +++ b/asn1/lte-rrc/lte-rrc.cnf @@ -659,26 +659,28 @@ if(ue_eutra_cap_tvb){ #.FN_BODY Handover/nas-SecurityParamFromEUTRA VAL_PTR = &nas_sec_param_from_eutra_tvb tvbuff_t *nas_sec_param_from_eutra_tvb = NULL; guint32 length; - proto_item *item; proto_tree *subtree; %(DEFAULT_BODY)s - length = tvb_length(nas_sec_param_from_eutra_tvb); - item = proto_tree_add_text(tree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA"); - subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam); - de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + if (nas_sec_param_from_eutra_tvb) { + length = tvb_length(nas_sec_param_from_eutra_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); + proto_tree_add_text(subtree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA"); + de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + } #.FN_BODY SecurityConfigHO/handoverType/interRAT/nas-SecurityParamToEUTRA VAL_PTR = &nas_sec_param_to_eutra_tvb tvbuff_t *nas_sec_param_to_eutra_tvb = NULL; guint32 length; - proto_item *item; proto_tree *subtree; %(DEFAULT_BODY)s - length = tvb_length(nas_sec_param_to_eutra_tvb); - item = proto_tree_add_text(tree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA"); - subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam); - de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + if (nas_sec_param_to_eutra_tvb) { + length = tvb_length(nas_sec_param_to_eutra_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); + proto_tree_add_text(subtree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA"); + de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + } #.FN_BODY SI-OrPSI-GERAN VAL_PTR = <e_rrc_si_or_psi_geran_val %(DEFAULT_BODY)s diff --git a/asn1/lte-rrc/packet-lte-rrc-template.c b/asn1/lte-rrc/packet-lte-rrc-template.c index b0aaec7a21..ae99b881e4 100644 --- a/asn1/lte-rrc/packet-lte-rrc-template.c +++ b/asn1/lte-rrc/packet-lte-rrc-template.c @@ -2204,6 +2204,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_featureGroupIndRel10, &ett_lte_rrc_neighCellConfig, &ett_lte_rrc_absTimeInfo, + &ett_lte_rrc_nas_SecurityParam }; -- cgit v1.2.3