aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJiri Benc <jbenc@suse.cz>2005-10-10 13:16:53 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-10-18 17:25:36 -0400
commit757d18faee58aa4c43bcaf9a44decf17fa68adeb (patch)
tree307ccb9b815b2b53ad79bb0b0bc5d17a6f39aed0 /net
parent28af493cd7b89cba7e3ee534079cf4f41bb4b4f9 (diff)
[PATCH] ieee80211: division by zero fix
This fixes division by zero bug in ieee80211_wx_get_scan(). Signed-off-by: Jiri Benc <jbenc@suse.cz> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'net')
-rw-r--r--net/ieee80211/ieee80211_wx.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/net/ieee80211/ieee80211_wx.c b/net/ieee80211/ieee80211_wx.c
index ee7a70a13250..1ce7af9bec35 100644
--- a/net/ieee80211/ieee80211_wx.c
+++ b/net/ieee80211/ieee80211_wx.c
@@ -152,15 +152,18 @@ static inline char *ipw2100_translate_scan(struct ieee80211_device *ieee,
152 iwe.u.qual.level = 0; 152 iwe.u.qual.level = 0;
153 } else { 153 } else {
154 iwe.u.qual.level = network->stats.rssi; 154 iwe.u.qual.level = network->stats.rssi;
155 iwe.u.qual.qual = 155 if (ieee->perfect_rssi == ieee->worst_rssi)
156 (100 * 156 iwe.u.qual.qual = 100;
157 (ieee->perfect_rssi - ieee->worst_rssi) * 157 else
158 (ieee->perfect_rssi - ieee->worst_rssi) - 158 iwe.u.qual.qual =
159 (ieee->perfect_rssi - network->stats.rssi) * 159 (100 *
160 (15 * (ieee->perfect_rssi - ieee->worst_rssi) + 160 (ieee->perfect_rssi - ieee->worst_rssi) *
161 62 * (ieee->perfect_rssi - network->stats.rssi))) / 161 (ieee->perfect_rssi - ieee->worst_rssi) -
162 ((ieee->perfect_rssi - ieee->worst_rssi) * 162 (ieee->perfect_rssi - network->stats.rssi) *
163 (ieee->perfect_rssi - ieee->worst_rssi)); 163 (15 * (ieee->perfect_rssi - ieee->worst_rssi) +
164 62 * (ieee->perfect_rssi - network->stats.rssi))) /
165 ((ieee->perfect_rssi - ieee->worst_rssi) *
166 (ieee->perfect_rssi - ieee->worst_rssi));
164 if (iwe.u.qual.qual > 100) 167 if (iwe.u.qual.qual > 100)
165 iwe.u.qual.qual = 100; 168 iwe.u.qual.qual = 100;
166 else if (iwe.u.qual.qual < 1) 169 else if (iwe.u.qual.qual < 1)