From Katrina Zhang:

Add/fix RFSP dissection.

svn path=/trunk/; revision=53163
This commit is contained in:
Anders Broman 2013-11-08 05:58:13 +00:00
parent fd429a6ed3
commit 88d0e909a2
2 changed files with 19 additions and 8 deletions

View File

@ -4502,7 +4502,8 @@ decode_qos_umts(tvbuff_t * tvb, int offset, proto_tree * tree, const gchar * qos
if(length > 13 ||((type == 2) && (length == 13))) {
proto_tree_add_uint(ext_tree_qos, hf_gtp_qos_src_stat_desc, tvb, offset + (12 - 1) * utf8_type + 1, utf8_type, src_stat_desc);
proto_tree_add_boolean(ext_tree_qos, hf_gtp_qos_sig_ind, tvb, offset + (12 - 1) * utf8_type + 1, utf8_type, sig_ind);
}
}
if(length > 14) {
/* Octet 15 */
@ -6897,7 +6898,7 @@ decode_gtp_reliable_irat_ho_inf(tvbuff_t * tvb, int offset, packet_info * pinfo
static int
decode_gtp_rfsp_index(tvbuff_t * tvb, int offset, packet_info * pinfo _U_, proto_tree * tree)
{
guint16 length;
guint16 length, rfsp;
proto_tree *ext_tree;
proto_item *te;
@ -6910,7 +6911,8 @@ decode_gtp_rfsp_index(tvbuff_t * tvb, int offset, packet_info * pinfo _U_, proto
proto_tree_add_item(ext_tree, hf_gtp_ext_length, tvb, offset, 2, ENC_BIG_ENDIAN);
offset = offset + 2;
proto_tree_add_text(ext_tree, tvb, offset, length, "The rest of the data is not dissected yet");
rfsp = tvb_get_ntohs(tvb, offset);
proto_tree_add_text(ext_tree, tvb, offset, length, "RFSP Index: %u", rfsp+1);
return 3 + length;
}

View File

@ -376,7 +376,8 @@ static int hf_gtpv2_mbms_ip_mc_src_addrv4 = -1;
static int hf_gtpv2_mbms_ip_mc_src_addrv6 = -1;
static int hf_gtpv2_mbms_hc_indicator = -1;
static int hf_gtpv2_mbms_dist_indication = -1;
static int hf_gtpv2_rfsp_index = -1;
static int hf_gtpv2_subscriber_rfsp = -1;
static int hf_gtpv2_rfsp_inuse = -1;
static int hf_gtpv2_mbms_service_id = -1;
static int hf_gtpv2_add_flags_for_srvcc_ics = -1;
static int hf_gtpv2_vsrvcc_flag = -1;
@ -4681,8 +4682,11 @@ dissect_gtpv2_rfsp_index(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree
{
int offset = 0;
proto_tree_add_item(tree, hf_gtpv2_rfsp_index, tvb, offset, 2, ENC_BIG_ENDIAN);
if(instance == 0){
proto_tree_add_item(tree, hf_gtpv2_subscriber_rfsp, tvb, offset, 2, ENC_BIG_ENDIAN);
}else if(instance == 1){
proto_tree_add_item(tree, hf_gtpv2_rfsp_inuse, tvb, offset, 2, ENC_BIG_ENDIAN);
}
}
/* 8.78 CSG ID */
@ -6815,8 +6819,13 @@ void proto_register_gtpv2(void)
FT_UINT8, BASE_DEC, VALS(gtpv2_mbms_dist_indication_vals), 0x03,
NULL, HFILL}
},
{ &hf_gtpv2_rfsp_index,
{"RFSP Index", "gtpv2.rfsp_index",
{ &hf_gtpv2_subscriber_rfsp,
{"Subscribed RFSP Index", "gtpv2.subscriber_rfsp",
FT_INT16, BASE_DEC, NULL, 0x0,
NULL, HFILL}
},
{ &hf_gtpv2_rfsp_inuse,
{"RFSP Index in Use", "gtpv2.rfsp_inuse",
FT_INT16, BASE_DEC, NULL, 0x0,
NULL, HFILL}
},