diff options
author | sam <sam@FreeBSD.org> | 2008-10-19 21:34:49 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2008-10-19 21:34:49 +0000 |
commit | 80a9e7675d2f183a063e4a2a35bfdce8ffc0c372 (patch) | |
tree | 2d98ad2fb6105cfa6d88fa41167bafe6b036ef6a | |
parent | 2f8a2668f4849bc6ddaa670d23487d9733577a4d (diff) | |
download | FreeBSD-src-80a9e7675d2f183a063e4a2a35bfdce8ffc0c372.zip FreeBSD-src-80a9e7675d2f183a063e4a2a35bfdce8ffc0c372.tar.gz |
fix static key wep; r183248 caused drivers to be called for keys to be
assigned to slots in the global key table but ath_key_alloc was not
updated to handle that
-rw-r--r-- | sys/dev/ath/if_ath.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c index 812980d..4a4395c 100644 --- a/sys/dev/ath/if_ath.c +++ b/sys/dev/ath/if_ath.c @@ -2403,7 +2403,8 @@ ath_key_alloc(struct ieee80211vap *vap, struct ieee80211_key *k, * it permits us to support multiple users for adhoc and/or * multi-station operation. */ - if ((k->wk_flags & IEEE80211_KEY_GROUP) && !sc->sc_mcastkey) { + if (k->wk_keyix != IEEE80211_KEYIX_NONE || /* global key */ + ((k->wk_flags & IEEE80211_KEY_GROUP) && !sc->sc_mcastkey)) { if (!(&vap->iv_nw_keys[0] <= k && k < &vap->iv_nw_keys[IEEE80211_WEP_NKID])) { /* should not happen */ |