aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2011-04-28 19:59:14 +0000
committerAnders Broman <anders.broman@ericsson.com>2011-04-28 19:59:14 +0000
commite0c80c4138c05caae303f49f45770f42aa314ab1 (patch)
tree22f5316cc49a378315b9bf431502b6106afc9090 /epan
parent94afa45fbf8acafd1ce8d2fe0973cad164005fbb (diff)
From Pascal Quantin:
the dissection of the UE capabilities when the RAT type is set to geran-cs (the value part of Classmark 2 starts at the third byte). Moreover it adds a subtree to enhance the display of Mobile Station Classmark 2 and 3 and MS Radio Access Capability IEs. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5867 svn path=/trunk/; revision=36943
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-lte-rrc.c50
-rw-r--r--epan/dissectors/packet-lte-rrc.h6
2 files changed, 35 insertions, 21 deletions
diff --git a/epan/dissectors/packet-lte-rrc.c b/epan/dissectors/packet-lte-rrc.c
index c4efe218f2..88239dcbaa 100644
--- a/epan/dissectors/packet-lte-rrc.c
+++ b/epan/dissectors/packet-lte-rrc.c
@@ -5,7 +5,7 @@
/* Input file: packet-lte-rrc-template.c */
-#line 1 "packet-lte-rrc-template.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
/* packet-lte-rrc-template.c
* Routines for Evolved Universal Terrestrial Radio Access (E-UTRA);
* Radio Resource Control (RRC) protocol specification
@@ -58,7 +58,7 @@ static guint32 lte_rrc_rat_type_value = -1;
/* Include constants */
/*--- Included file: packet-lte-rrc-val.h ---*/
-#line 1 "packet-lte-rrc-val.h"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-val.h"
#define maxBands 64
#define maxCDMA_BandClass 32
#define maxCellBlack 16
@@ -93,14 +93,14 @@ static guint32 lte_rrc_rat_type_value = -1;
#define maxReestabInfo 32
/*--- End of included file: packet-lte-rrc-val.h ---*/
-#line 52 "packet-lte-rrc-template.c"
+#line 52 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
/* Initialize the protocol and registered fields */
static int proto_lte_rrc = -1;
/*--- Included file: packet-lte-rrc-hf.c ---*/
-#line 1 "packet-lte-rrc-hf.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-hf.c"
static int hf_lte_rrc_BCCH_BCH_Message_PDU = -1; /* BCCH_BCH_Message */
static int hf_lte_rrc_BCCH_DL_SCH_Message_PDU = -1; /* BCCH_DL_SCH_Message */
static int hf_lte_rrc_MCCH_Message_PDU = -1; /* MCCH_Message */
@@ -1368,7 +1368,7 @@ static int hf_lte_rrc_key_eNodeB_Star = -1; /* Key_eNodeB_Star */
static int hf_lte_rrc_ue_InactiveTime = -1; /* T_ue_InactiveTime */
/*--- End of included file: packet-lte-rrc-hf.c ---*/
-#line 57 "packet-lte-rrc-template.c"
+#line 57 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
static int hf_lte_rrc_eutra_cap_feat_group_ind_1 = -1;
static int hf_lte_rrc_eutra_cap_feat_group_ind_2 = -1;
@@ -1408,7 +1408,7 @@ static int ett_lte_rrc = -1;
/*--- Included file: packet-lte-rrc-ett.c ---*/
-#line 1 "packet-lte-rrc-ett.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-ett.c"
static gint ett_lte_rrc_BCCH_BCH_Message = -1;
static gint ett_lte_rrc_BCCH_DL_SCH_Message = -1;
static gint ett_lte_rrc_BCCH_DL_SCH_MessageType = -1;
@@ -2079,7 +2079,7 @@ static gint ett_lte_rrc_AdditionalReestabInfo = -1;
static gint ett_lte_rrc_RRM_Config = -1;
/*--- End of included file: packet-lte-rrc-ett.c ---*/
-#line 95 "packet-lte-rrc-template.c"
+#line 95 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
static gint ett_lte_rrc_featureGroupIndicators = -1;
@@ -2218,7 +2218,7 @@ static const true_false_string lte_rrc_eutra_cap_feat_group_ind_32_val = {
};
/*--- Included file: packet-lte-rrc-fn.c ---*/
-#line 1 "packet-lte-rrc-fn.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-fn.c"
/*--- PDUs declarations ---*/
static int dissect_SystemInformationBlockType1_v890_IEs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
@@ -16171,6 +16171,9 @@ dissect_lte_rrc_T_ueCapabilityRAT_Container(tvbuff_t *tvb _U_, int offset _U_, a
if(ue_eutra_cap_tvb){
+ guint32 length;
+ proto_item *item;
+ proto_tree *subtree;
switch(lte_rrc_rat_type_value){
case 0:
/* eutra */
@@ -16182,12 +16185,23 @@ if(ue_eutra_cap_tvb){
break;
case 2:
/* geran-cs */
- de_ms_cm_2(ue_eutra_cap_tvb, tree, actx->pinfo, 0, 5, NULL, 0);
- de_ms_cm_3(ue_eutra_cap_tvb, tree, actx->pinfo, 5, tvb_length(ue_eutra_cap_tvb)-5, NULL, 0);
+ /* Mobile Station Classmark 2 is formatted as TLV with the two first bytes set to 0x33 0x03 */
+ item = proto_tree_add_text(tree, ue_eutra_cap_tvb, 0, 5, "Mobile Station Classmark 2");
+ subtree = proto_item_add_subtree(item, ett_lte_rrc_UE_CapabilityRAT_Container);
+ de_ms_cm_2(ue_eutra_cap_tvb, subtree, actx->pinfo, 2, 3, NULL, 0);
+ /* Mobile Station Classmark 3 is formatted as V */
+ length = tvb_length(ue_eutra_cap_tvb)-5;
+ item = proto_tree_add_text(tree, ue_eutra_cap_tvb, 5, length, "Mobile Station Classmark 3");
+ subtree = proto_item_add_subtree(item, ett_lte_rrc_UE_CapabilityRAT_Container);
+ de_ms_cm_3(ue_eutra_cap_tvb, subtree, actx->pinfo, 5, length, NULL, 0);
break;
case 3:
/* geran-ps */
- de_gmm_ms_radio_acc_cap(ue_eutra_cap_tvb, tree, actx->pinfo, 0, tvb_length(ue_eutra_cap_tvb), NULL, 0);
+ /* MS Radio Access Capability is formatted as V */
+ length = tvb_length(ue_eutra_cap_tvb);
+ item = proto_tree_add_text(tree, ue_eutra_cap_tvb, 0, length, "MS Radio Access Capability");
+ subtree = proto_item_add_subtree(item, ett_lte_rrc_UE_CapabilityRAT_Container);
+ de_gmm_ms_radio_acc_cap(ue_eutra_cap_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
break;
case 4:
/* cdma2000-1XRTT */
@@ -19289,7 +19303,7 @@ static int dissect_SystemInformationBlockType1_v890_IEs_PDU(tvbuff_t *tvb _U_, p
/*--- End of included file: packet-lte-rrc-fn.c ---*/
-#line 232 "packet-lte-rrc-template.c"
+#line 232 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
static void
dissect_lte_rrc_DL_CCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
@@ -19366,7 +19380,7 @@ void proto_register_lte_rrc(void) {
/*--- Included file: packet-lte-rrc-hfarr.c ---*/
-#line 1 "packet-lte-rrc-hfarr.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-hfarr.c"
{ &hf_lte_rrc_BCCH_BCH_Message_PDU,
{ "BCCH-BCH-Message", "lte-rrc.BCCH_BCH_Message",
FT_NONE, BASE_NONE, NULL, 0,
@@ -24429,7 +24443,7 @@ void proto_register_lte_rrc(void) {
NULL, HFILL }},
/*--- End of included file: packet-lte-rrc-hfarr.c ---*/
-#line 307 "packet-lte-rrc-template.c"
+#line 307 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
{ &hf_lte_rrc_eutra_cap_feat_group_ind_1,
{ "Indicator 1", "lte-rrc.eutra_cap_feat_group_ind_1",
@@ -24566,7 +24580,7 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc,
/*--- Included file: packet-lte-rrc-ettarr.c ---*/
-#line 1 "packet-lte-rrc-ettarr.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-ettarr.c"
&ett_lte_rrc_BCCH_BCH_Message,
&ett_lte_rrc_BCCH_DL_SCH_Message,
&ett_lte_rrc_BCCH_DL_SCH_MessageType,
@@ -25237,7 +25251,7 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc_RRM_Config,
/*--- End of included file: packet-lte-rrc-ettarr.c ---*/
-#line 442 "packet-lte-rrc-template.c"
+#line 442 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
&ett_lte_rrc_featureGroupIndicators,
};
@@ -25259,7 +25273,7 @@ void proto_register_lte_rrc(void) {
/* Register the dissectors defined in lte-rrc.conf */
/*--- Included file: packet-lte-rrc-dis-reg.c ---*/
-#line 1 "packet-lte-rrc-dis-reg.c"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-dis-reg.c"
new_register_dissector("lte-rrc.bcch.bch", dissect_BCCH_BCH_Message_PDU, proto_lte_rrc);
new_register_dissector("lte-rrc.bcch.dl.sch", dissect_BCCH_DL_SCH_Message_PDU, proto_lte_rrc);
new_register_dissector("lte-rrc.mcch", dissect_MCCH_Message_PDU, proto_lte_rrc);
@@ -25273,7 +25287,7 @@ void proto_register_lte_rrc(void) {
/*--- End of included file: packet-lte-rrc-dis-reg.c ---*/
-#line 462 "packet-lte-rrc-template.c"
+#line 462 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
}
diff --git a/epan/dissectors/packet-lte-rrc.h b/epan/dissectors/packet-lte-rrc.h
index 40f5932f4b..9882a66254 100644
--- a/epan/dissectors/packet-lte-rrc.h
+++ b/epan/dissectors/packet-lte-rrc.h
@@ -5,7 +5,7 @@
/* Input file: packet-lte-rrc-template.h */
-#line 1 "packet-lte-rrc-template.h"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-template.h"
/* packet-llc-rrc-template.h
* Copyright 2009, Anders Broman <anders.broman@ericsson.com>
*
@@ -35,7 +35,7 @@
/*--- Included file: packet-lte-rrc-exp.h ---*/
-#line 1 "packet-lte-rrc-exp.h"
+#line 1 "../../asn1/lte-rrc/packet-lte-rrc-exp.h"
int dissect_lte_rrc_UE_EUTRA_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
int dissect_lte_rrc_HandoverCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
int dissect_lte_rrc_HandoverPreparationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
@@ -46,6 +46,6 @@ int dissect_lte_rrc_HandoverPreparationInformation_PDU(tvbuff_t *tvb _U_, packet
int dissect_lte_rrc_UERadioAccessCapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
/*--- End of included file: packet-lte-rrc-exp.h ---*/
-#line 29 "packet-lte-rrc-template.h"
+#line 29 "../../asn1/lte-rrc/packet-lte-rrc-template.h"
#endif /* PACKET_LTE_RRC_H */