summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211_crypto.h
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2009-07-21 19:36:32 +0000
committersam <sam@FreeBSD.org>2009-07-21 19:36:32 +0000
commite5dfb90bc39200659ab00a42b65e93605c31f968 (patch)
tree84bfc401bfd602a6971552797b04acaa8401ab14 /sys/net80211/ieee80211_crypto.h
parent00f47854ed912106658990f774aa6c54f5078362 (diff)
downloadFreeBSD-src-e5dfb90bc39200659ab00a42b65e93605c31f968.zip
FreeBSD-src-e5dfb90bc39200659ab00a42b65e93605c31f968.tar.gz
Correct handling of keys that already have a hardware/device key index:
this was broken in r183248 when the check of wk_keyix was replaced by a check of IEEE80211_KEY_DEVKEY (because the flag was clobbered). Define IEEE80211_KEY_DEVICE to specify flags that are owned by net80211/driver and use this to preserve IEEE80211_KEY_DEVKEY so we don't ask the driver for another key index when we already have one. Testing by: Daniel Thiele, Wes Morgan Reviewed by: rpaulo Approved by: re (kib)
Diffstat (limited to 'sys/net80211/ieee80211_crypto.h')
-rw-r--r--sys/net80211/ieee80211_crypto.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_crypto.h b/sys/net80211/ieee80211_crypto.h
index dde2c46..57d05ad 100644
--- a/sys/net80211/ieee80211_crypto.h
+++ b/sys/net80211/ieee80211_crypto.h
@@ -99,6 +99,8 @@ struct ieee80211_key {
};
#define IEEE80211_KEY_COMMON /* common flags passed in by apps */\
(IEEE80211_KEY_XMIT | IEEE80211_KEY_RECV | IEEE80211_KEY_GROUP)
+#define IEEE80211_KEY_DEVICE /* flags owned by device driver */\
+ (IEEE80211_KEY_DEVKEY|IEEE80211_KEY_CIPHER0|IEEE80211_KEY_CIPHER1)
#define IEEE80211_KEY_SWCRYPT \
(IEEE80211_KEY_SWENCRYPT | IEEE80211_KEY_SWDECRYPT)
OpenPOWER on IntegriCloud