Skip to content

Commit

Permalink
[PATCH] ieee80211: division by zero fix
Browse files Browse the repository at this point in the history
This fixes division by zero bug in ieee80211_wx_get_scan().

Signed-off-by: Jiri Benc <[email protected]>
Signed-off-by: Jeff Garzik <[email protected]>
  • Loading branch information
Jiri Benc authored and jgarzik committed Oct 18, 2005
1 parent 28af493 commit 757d18f
Showing 1 changed file with 12 additions and 9 deletions.
21 changes: 12 additions & 9 deletions net/ieee80211/ieee80211_wx.c
Original file line number Diff line number Diff line change
Expand Up @@ -152,15 +152,18 @@ static inline char *ipw2100_translate_scan(struct ieee80211_device *ieee,
iwe.u.qual.level = 0;
} else {
iwe.u.qual.level = network->stats.rssi;
iwe.u.qual.qual =
(100 *
(ieee->perfect_rssi - ieee->worst_rssi) *
(ieee->perfect_rssi - ieee->worst_rssi) -
(ieee->perfect_rssi - network->stats.rssi) *
(15 * (ieee->perfect_rssi - ieee->worst_rssi) +
62 * (ieee->perfect_rssi - network->stats.rssi))) /
((ieee->perfect_rssi - ieee->worst_rssi) *
(ieee->perfect_rssi - ieee->worst_rssi));
if (ieee->perfect_rssi == ieee->worst_rssi)
iwe.u.qual.qual = 100;
else
iwe.u.qual.qual =
(100 *
(ieee->perfect_rssi - ieee->worst_rssi) *
(ieee->perfect_rssi - ieee->worst_rssi) -
(ieee->perfect_rssi - network->stats.rssi) *
(15 * (ieee->perfect_rssi - ieee->worst_rssi) +
62 * (ieee->perfect_rssi - network->stats.rssi))) /
((ieee->perfect_rssi - ieee->worst_rssi) *
(ieee->perfect_rssi - ieee->worst_rssi));
if (iwe.u.qual.qual > 100)
iwe.u.qual.qual = 100;
else if (iwe.u.qual.qual < 1)
Expand Down

0 comments on commit 757d18f

Please sign in to comment.