diff --git a/package/hostapd/patches/340-madwifi_key_fixes.patch b/package/hostapd/patches/340-madwifi_key_fixes.patch index d6883ffce4..7eca91fc18 100644 --- a/package/hostapd/patches/340-madwifi_key_fixes.patch +++ b/package/hostapd/patches/340-madwifi_key_fixes.patch @@ -1,20 +1,6 @@ --- a/src/drivers/driver_madwifi.c +++ b/src/drivers/driver_madwifi.c -@@ -438,9 +438,11 @@ madwifi_set_key(const char *ifname, void - wpa_printf(MSG_DEBUG, "%s: alg=%d addr=%s key_idx=%d", - __func__, alg, ether_sprintf(addr), key_idx); - -- if (alg == WPA_ALG_WEP) -+ if (alg == WPA_ALG_WEP) { - cipher = IEEE80211_CIPHER_WEP; -- else if (alg == WPA_ALG_TKIP) -+ if (!addr || !memcmp(addr, "\xff\xff\xff\xff\xff\xff", ETH_ALEN)) -+ return wpa_driver_wext_set_key(ifname, drv->wext, alg, addr, key_idx, set_tx, seq, seq_len, key, key_len); -+ } else if (alg == WPA_ALG_TKIP) - cipher = IEEE80211_CIPHER_TKIP; - else if (alg == WPA_ALG_CCMP) - cipher = IEEE80211_CIPHER_AES_CCM; -@@ -464,15 +466,30 @@ madwifi_set_key(const char *ifname, void +@@ -464,15 +464,30 @@ madwifi_set_key(const char *ifname, void memset(wk.ik_macaddr, 0xff, IEEE80211_ADDR_LEN); wk.ik_keyix = key_idx; wk.ik_flags |= IEEE80211_KEY_DEFAULT;