diff options
author | Evan Huus <eapache@gmail.com> | 2013-04-12 16:27:20 +0000 |
---|---|---|
committer | Evan Huus <eapache@gmail.com> | 2013-04-12 16:27:20 +0000 |
commit | 59851d0ab765b916b11f3b183ff1fd0cbb40cbe4 (patch) | |
tree | 199dd70c482ea6907d74b7c93541424533e0aad3 /epan/dissectors/packet-hpfeeds.c | |
parent | 374c1dd1e3bee45e3403123f52f47c8f140694b3 (diff) |
From Sebastiano Di Paola via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8577
The length field for HPFEEDS is 4 bytes, so actually get the whole
thing from the tvb.
svn path=/trunk/; revision=48832
Diffstat (limited to 'epan/dissectors/packet-hpfeeds.c')
-rw-r--r-- | epan/dissectors/packet-hpfeeds.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/epan/dissectors/packet-hpfeeds.c b/epan/dissectors/packet-hpfeeds.c index c569e5f0b7..5c1727a08f 100644 --- a/epan/dissectors/packet-hpfeeds.c +++ b/epan/dissectors/packet-hpfeeds.c @@ -311,7 +311,7 @@ dissect_hpfeeds(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) return; /* get message length in order to decide if we need to reassemble packet */ - msglen = tvb_get_guint8(tvb, offset); + msglen = tvb_get_ntohl(tvb, offset); /* Retrieve header data */ if (tree) { @@ -320,7 +320,7 @@ dissect_hpfeeds(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) proto_tree_add_item(hpfeeds_tree, hf_hpfeeds_msg_length, tvb, offset, 4, ENC_BIG_ENDIAN); } - + if (tvb_reported_length(tvb) < msglen) { /* we need to reassemble */ tcp_dissect_pdus(tvb, pinfo, hpfeeds_tree, hpfeeds_desegment, 5, |