OSDN Git Service

mwifiex: Fix skipped vendor specific IEs
authorRoman Stratiienko <roman.stratiienko@globallogic.com>
Tue, 24 Jul 2018 11:47:27 +0000 (14:47 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 31 Jul 2018 07:13:39 +0000 (10:13 +0300)
Mwifiex firmware inserts only Microsoft information element
Allow other vendor specific IEs to pass from userspace

Signed-off-by: Roman Stratiienko <roman.stratiienko@globallogic.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/ie.c

index b10baac..75cbd60 100644 (file)
@@ -355,8 +355,14 @@ 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 WMM IE */
+                       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));