From bd3e24f0dab1fb3d4846d54e32f837f56674a9c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Ruytenberg?= Date: Sat, 13 May 2017 19:31:07 +0200 Subject: IEEE80211-radio: Fix divide by zero Perform sanity check on parsed data rate. Data rate of zero results in a division by zero in calculate_llac_duration. Do not use data rate if zero. Bug: 13706 Change-Id: I7883e1052a0965f7927d3a478c0aa992693f7fe1 Reviewed-on: https://code.wireshark.org/review/21626 Reviewed-by: Peter Wu Petri-Dish: Peter Wu Reviewed-by: Guy Harris Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/dissectors/packet-ieee80211-radio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'epan/dissectors/packet-ieee80211-radio.c') diff --git a/epan/dissectors/packet-ieee80211-radio.c b/epan/dissectors/packet-ieee80211-radio.c index 70404127c4..2b78c79934 100644 --- a/epan/dissectors/packet-ieee80211-radio.c +++ b/epan/dissectors/packet-ieee80211-radio.c @@ -882,7 +882,7 @@ dissect_wlan_radio_phdr (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, frame_length += 4; } - if (have_data_rate) { + if (have_data_rate && data_rate > 0) { /* duration calculations */ gboolean assumed_short_preamble = FALSE; gboolean assumed_non_greenfield = FALSE; -- cgit v1.2.3