--- net/mac80211/mlme.c.old 2008-08-25 00:19:30.000000000 +0200 +++ net/mac80211/mlme.c 2008-08-24 22:21:16.000000000 +0200 @@ -813,7 +813,7 @@ } } - if (count == 8) { + if (count == 8 && rates_len > count) { pos = skb_put(skb, rates_len - count + 2); *pos++ = WLAN_EID_EXT_SUPP_RATES; *pos++ = rates_len - count;