DragonFlyBSD Kernel Audit
DF-1948 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/netif/ath/ath_rate/onoe/onoe.c b/sys/dev/netif/ath/ath_rate/onoe/onoe.c
--- a/sys/dev/netif/ath/ath_rate/onoe/onoe.c
+++ b/sys/dev/netif/ath/ath_rate/onoe/onoe.c
@@ -218,6 +218,8 @@
 	on->on_rix = rate;
 	ni->ni_txrate = ni->ni_rates.rs_rates[rate] & IEEE80211_RATE_VAL;
 	on->on_tx_rix0 = sc->sc_rixmap[ni->ni_txrate];
+	if (on->on_tx_rix0 >= rt->rateCount)
+		on->on_tx_rix0 = 0;
 	on->on_tx_rate0 = rt->info[on->on_tx_rix0].rateCode;
 	
 	on->on_tx_rate0sp = on->on_tx_rate0 |