diff options
author | Evan Huus <eapache@gmail.com> | 2015-05-16 10:48:40 -0400 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2015-05-16 20:52:10 +0000 |
commit | 185697ad9a03b6156d731257caa87ec00154cd57 (patch) | |
tree | 725d4cda4017a2cd7feed6de5fb062fd46137f42 /epan | |
parent | cfc5a2e05f58d815b9e9c580daccb56b9c4714c0 (diff) |
megaco: handle missing tokens
Fix an infinite loop when no transaction end offset is present and
`megaco_tvb_find_token` returns -1.
Bug: 11193
Change-Id: I82c7b795e522efca674787e504427f64b8c28fc4
Reviewed-on: https://code.wireshark.org/review/8483
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Evan Huus <eapache@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-megaco.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/epan/dissectors/packet-megaco.c b/epan/dissectors/packet-megaco.c index fbbbc43971..ac6e23ae1d 100644 --- a/epan/dissectors/packet-megaco.c +++ b/epan/dissectors/packet-megaco.c @@ -1326,7 +1326,7 @@ nextcontext: tvb_next_offset = tvb_transaction_end_offset; } - while( tvb_transaction_end_offset < tvb_len - 2); + while( tvb_transaction_end_offset > 0 && tvb_transaction_end_offset < tvb_len - 2); if(global_megaco_raw_text){ tvb_raw_text_add(tvb, megaco_tree); |