aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-umts_fp.c
diff options
context:
space:
mode:
authorMartin Mathieson <martin.r.mathieson@googlemail.com>2006-12-14 11:50:54 +0000
committerMartin Mathieson <martin.r.mathieson@googlemail.com>2006-12-14 11:50:54 +0000
commit60058373648b9f4dc140609fc04d625309a71138 (patch)
tree83b1ea3d3e49a9546633399cec5e0c58982cdebe /epan/dissectors/packet-umts_fp.c
parent2aaabbba43db00b371e651a1789ba080602923a7 (diff)
downloadwireshark-60058373648b9f4dc140609fc04d625309a71138.tar.gz
wireshark-60058373648b9f4dc140609fc04d625309a71138.tar.bz2
wireshark-60058373648b9f4dc140609fc04d625309a71138.zip
Fix version check needed for EDCH 'Number of subframes' field
svn path=/trunk/; revision=20137
Diffstat (limited to 'epan/dissectors/packet-umts_fp.c')
-rw-r--r--epan/dissectors/packet-umts_fp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/epan/dissectors/packet-umts_fp.c b/epan/dissectors/packet-umts_fp.c
index 785efb6385..07c3a7acad 100644
--- a/epan/dissectors/packet-umts_fp.c
+++ b/epan/dissectors/packet-umts_fp.c
@@ -1716,7 +1716,8 @@ void dissect_e_dch_channel_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
/* Number of subframes.
This was 3 bits in early releases, is 4 bits offset by 1 in later releases */
- if ((p_fp_info->dct2000_variant % 256) > 1)
+ if (((p_fp_info->dct2000_variant / 256) >= 2) ||
+ (p_fp_info->release > 6))
{
/* Use 4 bits plus offset of 1 */
number_of_subframes = (tvb_get_guint8(tvb, offset) & 0x0f) + 1;
@@ -1859,6 +1860,7 @@ void dissect_e_dch_channel_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
{
int m;
guint16 size = 0;
+ guint8 tsn;
guint send_size;
proto_item *ti;
@@ -1888,6 +1890,7 @@ void dissect_e_dch_channel_info(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
bit_offset += 2;
/* TSN */
+ tsn = (tvb_get_guint8(tvb, offset + (bit_offset/8)) & 0x3f);
proto_tree_add_item(subframe_tree, hf_fp_edch_tsn, tvb,
offset + (bit_offset/8),
1, FALSE);