DF-0394 / fix.diff
diff --git a/sys/netproto/802_11/wlan/ieee80211_scan_sta.c b/sys/netproto/802_11/wlan/ieee80211_scan_sta.c --- a/sys/netproto/802_11/wlan/ieee80211_scan_sta.c +++ b/sys/netproto/802_11/wlan/ieee80211_scan_sta.c @@ -282,8 +282,8 @@ if (sp->ssid[1] != 0 && (ISPROBE(subtype) || ise->se_ssid[1] == 0)) memcpy(ise->se_ssid, sp->ssid, 2+sp->ssid[1]); - KASSERT(sp->rates[1] <= IEEE80211_RATE_MAXSIZE, - ("rate set too large: %u", sp->rates[1])); + if (sp->rates[1] > IEEE80211_RATE_MAXSIZE) + sp->rates[1] = IEEE80211_RATE_MAXSIZE; memcpy(ise->se_rates, sp->rates, 2+sp->rates[1]); if (sp->xrates != NULL) { /* XXX validate xrates[1] */ |