diff options
author | Anders Broman <anders.broman@ericsson.com> | 2011-09-11 19:09:02 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2011-09-11 19:09:02 +0000 |
commit | 900484d992f0c983a2801cf061e2bb945f2040e9 (patch) | |
tree | 912f073858d4a1468bdba3e12a9ad18e3037b40d /asn1/lte-rrc | |
parent | 21ad6d3c35821699c32ea8bcd82a614dc183b19c (diff) |
From Pascal Quantin:
Update of 3GPP RRC and LTE RRC dissectors.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6333
svn path=/trunk/; revision=38964
Diffstat (limited to 'asn1/lte-rrc')
-rw-r--r-- | asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn | 2 | ||||
-rw-r--r-- | asn1/lte-rrc/EUTRA-RRC-Definitions.asn | 2 | ||||
-rw-r--r-- | asn1/lte-rrc/EUTRA-UE-Variables.asn | 2 | ||||
-rw-r--r-- | asn1/lte-rrc/lte-rrc.cnf | 68 | ||||
-rw-r--r-- | asn1/lte-rrc/packet-lte-rrc-template.c | 11 |
5 files changed, 79 insertions, 6 deletions
diff --git a/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn b/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn index d818345f34..bdc323ed0a 100644 --- a/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn +++ b/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 36.331 V9.6.0 (2011-03) +-- 3GPP TS 36.331 V9.7.0 (2011-06) -- $Id$ -- EUTRA-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::= diff --git a/asn1/lte-rrc/EUTRA-RRC-Definitions.asn b/asn1/lte-rrc/EUTRA-RRC-Definitions.asn index 0b49dea804..b24aff8571 100644 --- a/asn1/lte-rrc/EUTRA-RRC-Definitions.asn +++ b/asn1/lte-rrc/EUTRA-RRC-Definitions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 36.331 V9.6.0 (2011-03) +-- 3GPP TS 36.331 V9.7.0 (2011-06) -- $Id$ -- EUTRA-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::= diff --git a/asn1/lte-rrc/EUTRA-UE-Variables.asn b/asn1/lte-rrc/EUTRA-UE-Variables.asn index 52582b2455..a163f39284 100644 --- a/asn1/lte-rrc/EUTRA-UE-Variables.asn +++ b/asn1/lte-rrc/EUTRA-UE-Variables.asn @@ -1,4 +1,4 @@ --- 3GPP TS 36.331 V9.6.0 (2011-03) +-- 3GPP TS 36.331 V9.7.0 (2011-06) -- $Id$ -- EUTRA-UE-Variables DEFINITIONS AUTOMATIC TAGS ::= diff --git a/asn1/lte-rrc/lte-rrc.cnf b/asn1/lte-rrc/lte-rrc.cnf index cf453f04a1..36b0e011dd 100644 --- a/asn1/lte-rrc/lte-rrc.cnf +++ b/asn1/lte-rrc/lte-rrc.cnf @@ -223,6 +223,74 @@ if(ue_eutra_cap_tvb){ curr_bit_offset++; } +#.FN_BODY Handover + lte_rrc_ho_target_rat_type_value = -1; +%(DEFAULT_BODY)s + +#.FN_BODY Handover/targetRAT-Type VAL_PTR = <e_rrc_ho_target_rat_type_value +%(DEFAULT_BODY)s + +#.FN_BODY Handover/targetRAT-MessageContainer VAL_PTR = &target_rat_msg_cont_tvb + tvbuff_t *target_rat_msg_cont_tvb = NULL; +%(DEFAULT_BODY)s + if(target_rat_msg_cont_tvb){ + switch(lte_rrc_ho_target_rat_type_value){ + case 0: + /* utra */ + if (rrc_irat_ho_to_utran_cmd_handle) + call_dissector(rrc_irat_ho_to_utran_cmd_handle, target_rat_msg_cont_tvb, actx->pinfo, tree); + break; + case 1: + /* geran */ + break; + case 2: + /* cdma2000-1XRTT */ + break; + case 3: + /* cdma2000-HRPD */ + break; + default: + break; + } + } + +#.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, hf_lte_rrc_nas_SecurityParamFromEUTRA); + 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, hf_lte_rrc_nas_SecurityParamToEUTRA); + de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + + +#.FN_BODY CellInfoUTRA-FDD-r9/utra-BCCH-Container-r9 VAL_PTR = &utra_bcch_cont_tvb + tvbuff_t *utra_bcch_cont_tvb = NULL; +%(DEFAULT_BODY)s + if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) + call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, tree); + +#.FN_BODY CellInfoUTRA-TDD-r9/utra-BCCH-Container-r9 VAL_PTR = &utra_bcch_cont_tvb + tvbuff_t *utra_bcch_cont_tvb = NULL; +%(DEFAULT_BODY)s + if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) + call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, tree); + #.FN_HDR MasterInformationBlock col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock "); diff --git a/asn1/lte-rrc/packet-lte-rrc-template.c b/asn1/lte-rrc/packet-lte-rrc-template.c index 0f1a192bd8..8ea5b72737 100644 --- a/asn1/lte-rrc/packet-lte-rrc-template.c +++ b/asn1/lte-rrc/packet-lte-rrc-template.c @@ -1,7 +1,7 @@ /* packet-lte-rrc-template.c * Routines for Evolved Universal Terrestrial Radio Access (E-UTRA); * Radio Resource Control (RRC) protocol specification - * (3GPP TS 36.331 V9.6.0 Release 9) packet dissection + * (3GPP TS 36.331 V9.7.0 Release 9) packet dissection * Copyright 2008, Vincent Helfre * * $Id$ @@ -46,7 +46,10 @@ #define PFNAME "lte_rrc" static dissector_handle_t nas_eps_handle = NULL; +static dissector_handle_t rrc_irat_ho_to_utran_cmd_handle; +static dissector_handle_t rrc_sys_info_cont_handle; static guint32 lte_rrc_rat_type_value = -1; +static guint32 lte_rrc_ho_target_rat_type_value = -1; /* Include constants */ #include "packet-lte-rrc-val.h" @@ -218,8 +221,8 @@ static const true_false_string lte_rrc_eutra_cap_feat_group_ind_29_val = { "Semi-Persistent Scheduling - Not supported" }; static const true_false_string lte_rrc_eutra_cap_feat_group_ind_30_val = { - "Undefined - Supported", - "Undefined - Not supported" + "Handover between FDD and TDD - Supported", + "Handover between FDD and TDD - Not supported" }; static const true_false_string lte_rrc_eutra_cap_feat_group_ind_31_val = { "Undefined - Supported", @@ -505,6 +508,8 @@ proto_reg_handoff_lte_rrc(void) lte_rrc_dl_ccch_handle = find_dissector("lte_rrc.dl_ccch"); dissector_add_handle("udp.port", lte_rrc_dl_ccch_handle); nas_eps_handle = find_dissector("nas-eps"); + rrc_irat_ho_to_utran_cmd_handle = find_dissector("rrc.irat.ho_to_utran_cmd"); + rrc_sys_info_cont_handle = find_dissector("rrc.sysinfo.cont"); } |