From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-bl2nam02on0062.outbound.protection.outlook.com ([104.47.38.62]:18656 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751518AbdHNSoq (ORCPT ); Mon, 14 Aug 2017 14:44:46 -0400 Subject: Re: [PATCH] nl80211: add an option to allow MFP without requiring it To: Emmanuel Grumbach , johannes@sipsolutions.net Cc: linux-wireless@vger.kernel.org, Avinash Patil , sergey.matyukevich.os@quantenna.com References: <20170814134911.20869-1-emmanuel.grumbach@intel.com> From: Igor Mitsyanko Message-ID: <0fa0e9e5-fc62-8c64-f595-b1d5f8af9108@quantenna.com> (sfid-20170814_204451_364306_CF11DFC2) Date: Mon, 14 Aug 2017 11:44:40 -0700 MIME-Version: 1.0 In-Reply-To: <20170814134911.20869-1-emmanuel.grumbach@intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Sender: linux-wireless-owner@vger.kernel.org List-ID: On 08/14/2017 06:49 AM, Emmanuel Grumbach wrote: > > User space can now allow the kernel to associate to an AP > that requires MFP or that doesn't have MFP enabled in the > same NL80211_CMD_CONNECT command. > The driver / firmware will decide whether to use it or not. > > Signed-off-by: Emmanuel Grumbach > --- No issues from quantenna driver. Acked-by Igor Mitsyanko [...] > @@ -4086,10 +4090,12 @@ enum nl80211_key_type { > * enum nl80211_mfp - Management frame protection state > * @NL80211_MFP_NO: Management frame protection not used > * @NL80211_MFP_REQUIRED: Management frame protection required > + * @NL80211_MFP_OPTIONAL: Management frame is optional Probable meant to be "Management frame _protection_ is optional" > */ > enum nl80211_mfp { > NL80211_MFP_NO, > NL80211_MFP_REQUIRED, > + NL80211_MFP_OPTIONAL, > }; > > enum nl80211_wpa_versions { > diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c > index 8f035d9868d1..829867132326 100644 > --- a/net/wireless/nl80211.c > +++ b/net/wireless/nl80211.c > @@ -9115,6 +9115,7 @@ static int nl80211_connect(struct sk_buff *skb, struct genl_info *info) > if (info->attrs[NL80211_ATTR_USE_MFP]) { > connect.mfp = nla_get_u32(info->attrs[NL80211_ATTR_USE_MFP]); > if (connect.mfp != NL80211_MFP_REQUIRED && > + connect.mfp != NL80211_MFP_OPTIONAL && > connect.mfp != NL80211_MFP_NO) > return -EINVAL; > } else { > -- > 2.9.3 >