Commit 585b6e13 authored by Johannes Berg's avatar Johannes Berg

wifi: cfg80211: remove support for static WEP

This reverts commit b8676221 ("cfg80211: Add support for
static WEP in the driver") since no driver ever ended up using
it.
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent d0e99511
...@@ -1075,7 +1075,6 @@ struct survey_info { ...@@ -1075,7 +1075,6 @@ struct survey_info {
s8 noise; s8 noise;
}; };
#define CFG80211_MAX_WEP_KEYS 4
#define CFG80211_MAX_NUM_AKM_SUITES 10 #define CFG80211_MAX_NUM_AKM_SUITES 10
/** /**
...@@ -1099,9 +1098,6 @@ struct survey_info { ...@@ -1099,9 +1098,6 @@ struct survey_info {
* port frames over NL80211 instead of the network interface. * port frames over NL80211 instead of the network interface.
* @control_port_no_preauth: disables pre-auth rx over the nl80211 control * @control_port_no_preauth: disables pre-auth rx over the nl80211 control
* port for mac80211 * port for mac80211
* @wep_keys: static WEP keys, if not NULL points to an array of
* CFG80211_MAX_WEP_KEYS WEP keys
* @wep_tx_key: key index (0..3) of the default TX static WEP key
* @psk: PSK (for devices supporting 4-way-handshake offload) * @psk: PSK (for devices supporting 4-way-handshake offload)
* @sae_pwd: password for SAE authentication (for devices supporting SAE * @sae_pwd: password for SAE authentication (for devices supporting SAE
* offload) * offload)
...@@ -1134,8 +1130,6 @@ struct cfg80211_crypto_settings { ...@@ -1134,8 +1130,6 @@ struct cfg80211_crypto_settings {
bool control_port_no_encrypt; bool control_port_no_encrypt;
bool control_port_over_nl80211; bool control_port_over_nl80211;
bool control_port_no_preauth; bool control_port_no_preauth;
struct key_params *wep_keys;
int wep_tx_key;
const u8 *psk; const u8 *psk;
const u8 *sae_pwd; const u8 *sae_pwd;
u8 sae_pwd_len; u8 sae_pwd_len;
...@@ -4683,8 +4677,6 @@ struct cfg80211_ops { ...@@ -4683,8 +4677,6 @@ struct cfg80211_ops {
* @WIPHY_FLAG_SUPPORTS_5_10_MHZ: Device supports 5 MHz and 10 MHz channels. * @WIPHY_FLAG_SUPPORTS_5_10_MHZ: Device supports 5 MHz and 10 MHz channels.
* @WIPHY_FLAG_HAS_CHANNEL_SWITCH: Device supports channel switch in * @WIPHY_FLAG_HAS_CHANNEL_SWITCH: Device supports channel switch in
* beaconing mode (AP, IBSS, Mesh, ...). * beaconing mode (AP, IBSS, Mesh, ...).
* @WIPHY_FLAG_HAS_STATIC_WEP: The device supports static WEP key installation
* before connection.
* @WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK: The device supports bigger kek and kck keys * @WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK: The device supports bigger kek and kck keys
* @WIPHY_FLAG_SUPPORTS_MLO: This is a temporary flag gating the MLO APIs, * @WIPHY_FLAG_SUPPORTS_MLO: This is a temporary flag gating the MLO APIs,
* in order to not have them reachable in normal drivers, until we have * in order to not have them reachable in normal drivers, until we have
...@@ -4715,7 +4707,6 @@ enum wiphy_flags { ...@@ -4715,7 +4707,6 @@ enum wiphy_flags {
WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL = BIT(21), WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL = BIT(21),
WIPHY_FLAG_SUPPORTS_5_10_MHZ = BIT(22), WIPHY_FLAG_SUPPORTS_5_10_MHZ = BIT(22),
WIPHY_FLAG_HAS_CHANNEL_SWITCH = BIT(23), WIPHY_FLAG_HAS_CHANNEL_SWITCH = BIT(23),
WIPHY_FLAG_HAS_STATIC_WEP = BIT(24),
}; };
/** /**
......
...@@ -278,8 +278,8 @@ struct cfg80211_event { ...@@ -278,8 +278,8 @@ struct cfg80211_event {
}; };
struct cfg80211_cached_keys { struct cfg80211_cached_keys {
struct key_params params[CFG80211_MAX_WEP_KEYS]; struct key_params params[4];
u8 data[CFG80211_MAX_WEP_KEYS][WLAN_KEY_LEN_WEP104]; u8 data[4][WLAN_KEY_LEN_WEP104];
int def; int def;
}; };
......
...@@ -45,7 +45,6 @@ void __cfg80211_ibss_joined(struct net_device *dev, const u8 *bssid, ...@@ -45,7 +45,6 @@ void __cfg80211_ibss_joined(struct net_device *dev, const u8 *bssid,
cfg80211_hold_bss(bss_from_pub(bss)); cfg80211_hold_bss(bss_from_pub(bss));
wdev->u.ibss.current_bss = bss_from_pub(bss); wdev->u.ibss.current_bss = bss_from_pub(bss);
if (!(wdev->wiphy->flags & WIPHY_FLAG_HAS_STATIC_WEP))
cfg80211_upload_connect_keys(wdev); cfg80211_upload_connect_keys(wdev);
nl80211_send_ibss_bssid(wiphy_to_rdev(wdev->wiphy), dev, bssid, nl80211_send_ibss_bssid(wiphy_to_rdev(wdev->wiphy), dev, bssid,
...@@ -294,7 +293,7 @@ int cfg80211_ibss_wext_join(struct cfg80211_registered_device *rdev, ...@@ -294,7 +293,7 @@ int cfg80211_ibss_wext_join(struct cfg80211_registered_device *rdev,
ck = kmemdup(wdev->wext.keys, sizeof(*ck), GFP_KERNEL); ck = kmemdup(wdev->wext.keys, sizeof(*ck), GFP_KERNEL);
if (!ck) if (!ck)
return -ENOMEM; return -ENOMEM;
for (i = 0; i < CFG80211_MAX_WEP_KEYS; i++) for (i = 0; i < 4; i++)
ck->params[i].key = ck->data[i]; ck->params[i].key = ck->data[i];
} }
err = __cfg80211_join_ibss(rdev, wdev->netdev, err = __cfg80211_join_ibss(rdev, wdev->netdev,
......
...@@ -855,7 +855,6 @@ void __cfg80211_connect_result(struct net_device *dev, ...@@ -855,7 +855,6 @@ void __cfg80211_connect_result(struct net_device *dev,
ETH_ALEN); ETH_ALEN);
} }
if (!(wdev->wiphy->flags & WIPHY_FLAG_HAS_STATIC_WEP))
cfg80211_upload_connect_keys(wdev); cfg80211_upload_connect_keys(wdev);
rcu_read_lock(); rcu_read_lock();
...@@ -1462,9 +1461,6 @@ int cfg80211_connect(struct cfg80211_registered_device *rdev, ...@@ -1462,9 +1461,6 @@ int cfg80211_connect(struct cfg80211_registered_device *rdev,
connect->crypto.ciphers_pairwise[0] = cipher; connect->crypto.ciphers_pairwise[0] = cipher;
} }
} }
connect->crypto.wep_keys = connkeys->params;
connect->crypto.wep_tx_key = connkeys->def;
} else { } else {
if (WARN_ON(connkeys)) if (WARN_ON(connkeys))
return -EINVAL; return -EINVAL;
......
...@@ -934,7 +934,7 @@ void cfg80211_upload_connect_keys(struct wireless_dev *wdev) ...@@ -934,7 +934,7 @@ void cfg80211_upload_connect_keys(struct wireless_dev *wdev)
if (!wdev->connect_keys) if (!wdev->connect_keys)
return; return;
for (i = 0; i < CFG80211_MAX_WEP_KEYS; i++) { for (i = 0; i < 4; i++) {
if (!wdev->connect_keys->params[i].cipher) if (!wdev->connect_keys->params[i].cipher)
continue; continue;
if (rdev_add_key(rdev, dev, -1, i, false, NULL, if (rdev_add_key(rdev, dev, -1, i, false, NULL,
......
...@@ -439,7 +439,7 @@ static int __cfg80211_set_encryption(struct cfg80211_registered_device *rdev, ...@@ -439,7 +439,7 @@ static int __cfg80211_set_encryption(struct cfg80211_registered_device *rdev,
GFP_KERNEL); GFP_KERNEL);
if (!wdev->wext.keys) if (!wdev->wext.keys)
return -ENOMEM; return -ENOMEM;
for (i = 0; i < CFG80211_MAX_WEP_KEYS; i++) for (i = 0; i < 4; i++)
wdev->wext.keys->params[i].key = wdev->wext.keys->params[i].key =
wdev->wext.keys->data[i]; wdev->wext.keys->data[i];
} }
......
...@@ -47,7 +47,7 @@ int cfg80211_mgd_wext_connect(struct cfg80211_registered_device *rdev, ...@@ -47,7 +47,7 @@ int cfg80211_mgd_wext_connect(struct cfg80211_registered_device *rdev,
ck = kmemdup(wdev->wext.keys, sizeof(*ck), GFP_KERNEL); ck = kmemdup(wdev->wext.keys, sizeof(*ck), GFP_KERNEL);
if (!ck) if (!ck)
return -ENOMEM; return -ENOMEM;
for (i = 0; i < CFG80211_MAX_WEP_KEYS; i++) for (i = 0; i < 4; i++)
ck->params[i].key = ck->data[i]; ck->params[i].key = ck->data[i];
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment