summaryrefslogtreecommitdiffstats
path: root/sys/dev/ath
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2009-02-10 19:27:50 +0000
committersam <sam@FreeBSD.org>2009-02-10 19:27:50 +0000
commit50792711b6cbefd6bddaf1d78592e30d9b5056c1 (patch)
tree54cbe869c13881e3d9e96dd76147db090dd6dc08 /sys/dev/ath
parent80e7762b02c8c49ab3eb24ad765e567f8f7eb572 (diff)
downloadFreeBSD-src-50792711b6cbefd6bddaf1d78592e30d9b5056c1.zip
FreeBSD-src-50792711b6cbefd6bddaf1d78592e30d9b5056c1.tar.gz
mark the CLR key installed for open auth stations such that it is reclaimed
when net80211 tears down station state; without this we leak keycache slots
Diffstat (limited to 'sys/dev/ath')
-rw-r--r--sys/dev/ath/if_ath.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index dc981c4..1925216 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -6093,6 +6093,8 @@ ath_setup_stationkey(struct ieee80211_node *ni)
/* XXX locking? */
ni->ni_ucastkey.wk_keyix = keyix;
ni->ni_ucastkey.wk_rxkeyix = rxkeyix;
+ /* NB: must mark device key to get called back on delete */
+ ni->ni_ucastkey.wk_flags |= IEEE80211_KEY_DEVKEY;
IEEE80211_ADDR_COPY(ni->ni_ucastkey.wk_macaddr, ni->ni_macaddr);
/* NB: this will create a pass-thru key entry */
ath_keyset(sc, &ni->ni_ucastkey, vap->iv_bss);
OpenPOWER on IntegriCloud