From ae34cbfd1efd69d0b20e3b7ce1dbaea7ab88f295 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Thu, 8 Jan 2009 13:32:11 +0200 Subject: [PATCH] --- yaml --- r: 134109 b: refs/heads/master c: 4375d08350e3661d5e8860d33eea084e47ba01cf h: refs/heads/master i: 134107: 45320ab5b1bc76855dbf50b216e642b85d725b99 v: v3 --- [refs] | 2 +- trunk/include/net/mac80211.h | 4 ++++ trunk/net/mac80211/wext.c | 4 ++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 7f010e47f714..394892e005c3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1f7d77ab69789980dad44e1af7afd3a68cd48276 +refs/heads/master: 4375d08350e3661d5e8860d33eea084e47ba01cf diff --git a/trunk/include/net/mac80211.h b/trunk/include/net/mac80211.h index 00a50a38c7f2..9bca2abbf038 100644 --- a/trunk/include/net/mac80211.h +++ b/trunk/include/net/mac80211.h @@ -865,6 +865,9 @@ enum ieee80211_tkip_key_type { * * @IEEE80211_HW_SUPPORTS_DYNAMIC_PS: * Hardware has support for dynamic PS. + * + * @IEEE80211_HW_MFP_CAPABLE: + * Hardware supports management frame protection (MFP, IEEE 802.11w). */ enum ieee80211_hw_flags { IEEE80211_HW_RX_INCLUDES_FCS = 1<<1, @@ -880,6 +883,7 @@ enum ieee80211_hw_flags { IEEE80211_HW_SUPPORTS_PS = 1<<11, IEEE80211_HW_PS_NULLFUNC_STACK = 1<<12, IEEE80211_HW_SUPPORTS_DYNAMIC_PS = 1<<13, + IEEE80211_HW_MFP_CAPABLE = 1<<14, }; /** diff --git a/trunk/net/mac80211/wext.c b/trunk/net/mac80211/wext.c index 2dd387495dfe..70a29b657b61 100644 --- a/trunk/net/mac80211/wext.c +++ b/trunk/net/mac80211/wext.c @@ -976,6 +976,10 @@ static int ieee80211_ioctl_siwauth(struct net_device *dev, ret = -EOPNOTSUPP; break; case IW_AUTH_MFP: + if (!(sdata->local->hw.flags & IEEE80211_HW_MFP_CAPABLE)) { + ret = -EOPNOTSUPP; + break; + } if (sdata->vif.type == NL80211_IFTYPE_STATION || sdata->vif.type == NL80211_IFTYPE_ADHOC) sdata->u.sta.mfp = data->value;