aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/lte-rrc
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2011-09-11 19:09:02 +0000
committerAnders Broman <anders.broman@ericsson.com>2011-09-11 19:09:02 +0000
commit900484d992f0c983a2801cf061e2bb945f2040e9 (patch)
tree912f073858d4a1468bdba3e12a9ad18e3037b40d /asn1/lte-rrc
parent21ad6d3c35821699c32ea8bcd82a614dc183b19c (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.asn2
-rw-r--r--asn1/lte-rrc/EUTRA-RRC-Definitions.asn2
-rw-r--r--asn1/lte-rrc/EUTRA-UE-Variables.asn2
-rw-r--r--asn1/lte-rrc/lte-rrc.cnf68
-rw-r--r--asn1/lte-rrc/packet-lte-rrc-template.c11
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 = &lte_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");
}