From: David Kimdon <[EMAIL PROTECTED]>

d80211: do not pass an invalid key index to set_key()

If a hardware key has not been configured then there is no point
to calling DISABLE_KEY.

Signed-off-by: David Kimdon <[EMAIL PROTECTED]>
Signed-off-by: Jiri Benc <[EMAIL PROTECTED]>

---

 net/d80211/ieee80211_ioctl.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

0efae98fe404771fc3660f1d6023ab692149ddec
diff --git a/net/d80211/ieee80211_ioctl.c b/net/d80211/ieee80211_ioctl.c
index 4be86c9..416d92e 100644
--- a/net/d80211/ieee80211_ioctl.c
+++ b/net/d80211/ieee80211_ioctl.c
@@ -612,7 +612,9 @@ #endif /* CONFIG_D80211_VERBOSE_DEBUG */
 
        if (alg == ALG_NONE) {
                keyconf = NULL;
-               if (try_hwaccel && key && local->ops->set_key &&
+               if (try_hwaccel && key &&
+                   key->hw_key_idx != HW_KEY_IDX_INVALID &&
+                   local->ops->set_key &&
                    (keyconf = ieee80211_key_data2conf(local, key)) != NULL &&
                    local->ops->set_key(local_to_hw(local), DISABLE_KEY,
                                       sta_addr, keyconf, sta ? sta->aid : 0)) {
-- 
1.3.0

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to