b43: claim support for IBSS RSN
The driver now claims to support IBSS/RSN. Group key configuration in hardware is skipped. Software encryption is used for multicast communications. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
d299a1f21e
commit
78f9c85035
|
@ -4010,6 +4010,20 @@ static int b43_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
||||||
if (modparam_nohwcrypt)
|
if (modparam_nohwcrypt)
|
||||||
return -ENOSPC; /* User disabled HW-crypto */
|
return -ENOSPC; /* User disabled HW-crypto */
|
||||||
|
|
||||||
|
if ((vif->type == NL80211_IFTYPE_ADHOC ||
|
||||||
|
vif->type == NL80211_IFTYPE_MESH_POINT) &&
|
||||||
|
(key->cipher == WLAN_CIPHER_SUITE_TKIP ||
|
||||||
|
key->cipher == WLAN_CIPHER_SUITE_CCMP) &&
|
||||||
|
!(key->flags & IEEE80211_KEY_FLAG_PAIRWISE)) {
|
||||||
|
/*
|
||||||
|
* For now, disable hw crypto for the RSN IBSS group keys. This
|
||||||
|
* could be optimized in the future, but until that gets
|
||||||
|
* implemented, use of software crypto for group addressed
|
||||||
|
* frames is a acceptable to allow RSN IBSS to be used.
|
||||||
|
*/
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
}
|
||||||
|
|
||||||
mutex_lock(&wl->mutex);
|
mutex_lock(&wl->mutex);
|
||||||
|
|
||||||
dev = wl->current_dev;
|
dev = wl->current_dev;
|
||||||
|
@ -5275,6 +5289,8 @@ static struct b43_wl *b43_wireless_init(struct b43_bus_dev *dev)
|
||||||
BIT(NL80211_IFTYPE_WDS) |
|
BIT(NL80211_IFTYPE_WDS) |
|
||||||
BIT(NL80211_IFTYPE_ADHOC);
|
BIT(NL80211_IFTYPE_ADHOC);
|
||||||
|
|
||||||
|
hw->wiphy->flags |= WIPHY_FLAG_IBSS_RSN;
|
||||||
|
|
||||||
hw->queues = modparam_qos ? B43_QOS_QUEUE_NUM : 1;
|
hw->queues = modparam_qos ? B43_QOS_QUEUE_NUM : 1;
|
||||||
wl->mac80211_initially_registered_queues = hw->queues;
|
wl->mac80211_initially_registered_queues = hw->queues;
|
||||||
hw->max_rates = 2;
|
hw->max_rates = 2;
|
||||||
|
|
Loading…
Reference in New Issue