|
@@ -20,6 +20,8 @@
|
|
|
#include <linux/delay.h>
|
|
|
#include <linux/slab.h>
|
|
|
#include <asm/uaccess.h>
|
|
|
+#include <linux/etherdevice.h>
|
|
|
+
|
|
|
#include "dot11d.h"
|
|
|
|
|
|
u8 rsn_authen_cipher_suite[16][4] = {
|
|
@@ -2969,9 +2971,7 @@ static int ieee80211_wpa_set_encryption(struct ieee80211_device *ieee,
|
|
|
param->u.crypt.key_len);
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
- if (param->sta_addr[0] == 0xff && param->sta_addr[1] == 0xff &&
|
|
|
- param->sta_addr[2] == 0xff && param->sta_addr[3] == 0xff &&
|
|
|
- param->sta_addr[4] == 0xff && param->sta_addr[5] == 0xff) {
|
|
|
+ if (is_broadcast_ether_addr(param->sta_addr)) {
|
|
|
if (param->u.crypt.idx >= WEP_KEYS)
|
|
|
return -EINVAL;
|
|
|
crypt = &ieee->crypt[param->u.crypt.idx];
|