diff options
author | Jouni Malinen <jouni.malinen@atheros.com> | 2009-05-06 15:09:37 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-05-11 15:23:54 -0400 |
commit | dc6382ced07d6bad61d0b591fb12ab5da7ca632c (patch) | |
tree | 277d03c28c0756368d663d1b053ceaed196f666e /include/linux/nl80211.h | |
parent | ed9b58bc443a1210b5be1ded6421b17e015bf985 (diff) |
nl80211 : Add support for configuring MFP
NL80211_CMD_ASSOCIATE request must be able to indicate whether
management frame protection (IEEE 802.11w) is being used. mac80211 was
able to use MFP in client mode only with WEXT, but the new
NL80211_ATTR_USE_MFP attribute will allow this to be done with
nl80211, too.
Since we are currently using nl80211 for MFP only with drivers that
use user space SME, only MFP disabled and required values are
used. However, the NL80211_ATTR_USE_MFP attribute is an enum that can
be extended with MFP optional in the future, if that is needed with
some drivers (e.g., if the RSN IE is generated by the driver).
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/linux/nl80211.h')
-rw-r--r-- | include/linux/nl80211.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index e9fd13aa79f0..58c4ee1822d3 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h | |||
@@ -494,6 +494,11 @@ enum nl80211_commands { | |||
494 | * @NL80211_ATTR_TIMED_OUT: a flag indicating than an operation timed out; this | 494 | * @NL80211_ATTR_TIMED_OUT: a flag indicating than an operation timed out; this |
495 | * is used, e.g., with %NL80211_CMD_AUTHENTICATE event | 495 | * is used, e.g., with %NL80211_CMD_AUTHENTICATE event |
496 | * | 496 | * |
497 | * @NL80211_ATTR_USE_MFP: Whether management frame protection (IEEE 802.11w) is | ||
498 | * used for the association (&enum nl80211_mfp, represented as a u32); | ||
499 | * this attribute can be used | ||
500 | * with %NL80211_CMD_ASSOCIATE request | ||
501 | * | ||
497 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 502 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
498 | * @__NL80211_ATTR_AFTER_LAST: internal use | 503 | * @__NL80211_ATTR_AFTER_LAST: internal use |
499 | */ | 504 | */ |
@@ -596,6 +601,8 @@ enum nl80211_attrs { | |||
596 | 601 | ||
597 | NL80211_ATTR_TIMED_OUT, | 602 | NL80211_ATTR_TIMED_OUT, |
598 | 603 | ||
604 | NL80211_ATTR_USE_MFP, | ||
605 | |||
599 | /* add attributes here, update the policy in nl80211.c */ | 606 | /* add attributes here, update the policy in nl80211.c */ |
600 | 607 | ||
601 | __NL80211_ATTR_AFTER_LAST, | 608 | __NL80211_ATTR_AFTER_LAST, |
@@ -1179,4 +1186,14 @@ enum nl80211_key_type { | |||
1179 | NL80211_KEYTYPE_PEERKEY, | 1186 | NL80211_KEYTYPE_PEERKEY, |
1180 | }; | 1187 | }; |
1181 | 1188 | ||
1189 | /** | ||
1190 | * enum nl80211_mfp - Management frame protection state | ||
1191 | * @NL80211_MFP_NO: Management frame protection not used | ||
1192 | * @NL80211_MFP_REQUIRED: Management frame protection required | ||
1193 | */ | ||
1194 | enum nl80211_mfp { | ||
1195 | NL80211_MFP_NO, | ||
1196 | NL80211_MFP_REQUIRED, | ||
1197 | }; | ||
1198 | |||
1182 | #endif /* __LINUX_NL80211_H */ | 1199 | #endif /* __LINUX_NL80211_H */ |