2018-07-23 13:33:24

by Roman Stratiienko

[permalink] [raw]
Subject: [PATCH] mwifiex: Fix skipped vendor specific IEs

From: Roman Stratiienko <[email protected]>

Only microsoft specific IE is added by FW
Let other IEs to pass from userspace

Signed-off-by: Roman Stratiienko <[email protected]>
---
drivers/net/wireless/marvell/mwifiex/ie.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/ie.c b/drivers/net/wireless/marvell/mwifiex/ie.c
index c488c30..c58b345 100644
--- a/drivers/net/wireless/marvell/mwifiex/ie.c
+++ b/drivers/net/wireless/marvell/mwifiex/ie.c
@@ -353,8 +353,16 @@ static int mwifiex_uap_parse_tail_ies(struct mwifiex_private *priv,
case WLAN_EID_HT_OPERATION:
case WLAN_EID_VHT_CAPABILITY:
case WLAN_EID_VHT_OPERATION:
- case WLAN_EID_VENDOR_SPECIFIC:
break;
+ case WLAN_EID_VENDOR_SPECIFIC:
+ /* Skip only Microsoft IE that added by FW
+ * Let other vendor specific IE to pass
+ */
+ if (cfg80211_find_vendor_ie(WLAN_OUI_MICROSOFT,
+ WLAN_OUI_TYPE_MICROSOFT_WMM,
+ (const u8 *)hdr,
+ hdr->len + sizeof(struct ieee_types_header)))
+ break;
default:
memcpy(gen_ie->ie_buffer + ie_len, hdr,
hdr->len + sizeof(struct ieee_types_header));
--
2.7.4



2018-07-24 09:08:53

by Sergei Shtylyov

[permalink] [raw]
Subject: Re: [PATCH] mwifiex: Fix skipped vendor specific IEs

Hello!

On 7/23/2018 4:31 PM, [email protected] wrote:

> From: Roman Stratiienko <[email protected]>
>
> Only microsoft specific IE is added by FW
> Let other IEs to pass from userspace

"To" not needed here.

>
> Signed-off-by: Roman Stratiienko <[email protected]>
> ---
> drivers/net/wireless/marvell/mwifiex/ie.c | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/marvell/mwifiex/ie.c b/drivers/net/wireless/marvell/mwifiex/ie.c
> index c488c30..c58b345 100644
> --- a/drivers/net/wireless/marvell/mwifiex/ie.c
> +++ b/drivers/net/wireless/marvell/mwifiex/ie.c
> @@ -353,8 +353,16 @@ static int mwifiex_uap_parse_tail_ies(struct mwifiex_private *priv,
> case WLAN_EID_HT_OPERATION:
> case WLAN_EID_VHT_CAPABILITY:
> case WLAN_EID_VHT_OPERATION:
> - case WLAN_EID_VENDOR_SPECIFIC:
> break;
> + case WLAN_EID_VENDOR_SPECIFIC:
> + /* Skip only Microsoft IE that added by FW
^^^^
That's?

> + * Let other vendor specific IE to pass

"To" not needed here as well...

[...]

MBR, Sergei