Fix for bug 6650: IP-ID is 2 bytes.

Note that I'm still aiming to change PDCP to use packet-rohc rather than its own, separate implementation...

svn path=/trunk/; revision=40111
This commit is contained in:
Martin Mathieson 2011-12-07 12:19:59 +00:00
parent e3f5247fde
commit a64e6e5e59
1 changed files with 6 additions and 5 deletions

View File

@ -670,7 +670,8 @@ static int dissect_pdcp_dynamic_chain(proto_tree *tree,
proto_tree *dynamic_ipv4_tree;
proto_item *root_ti;
int tree_start_offset = offset;
guint8 tos, ttl, id, rnd, nbo;
guint8 tos, ttl, rnd, nbo;
guint16 id;
/* Create dynamic IPv4 subtree */
root_ti = proto_tree_add_item(tree, hf_pdcp_lte_rohc_dynamic_ipv4, tvb, offset, -1, ENC_NA);
@ -687,9 +688,9 @@ static int dissect_pdcp_dynamic_chain(proto_tree *tree,
offset++;
/* IP-ID */
id = tvb_get_guint8(tvb, offset);
proto_tree_add_item(dynamic_ipv4_tree, hf_pdcp_lte_rohc_dynamic_ipv4_id, tvb, offset, 1, ENC_BIG_ENDIAN);
offset++;
id = tvb_get_ntohs(tvb, offset);
proto_tree_add_item(dynamic_ipv4_tree, hf_pdcp_lte_rohc_dynamic_ipv4_id, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
/* IP flags */
rnd = (tvb_get_guint8(tvb, offset) & 0x40) >> 6;
@ -2727,7 +2728,7 @@ void proto_register_pdcp(void)
},
{ &hf_pdcp_lte_rohc_dynamic_ipv4_id,
{ "IP-ID",
"pdcp-lte.rohc.ip.id", FT_UINT8, BASE_HEX, NULL, 0x0,
"pdcp-lte.rohc.ip.id", FT_UINT16, BASE_HEX, NULL, 0x0,
"IP ID", HFILL
}
},