staging: rtl8723au: rtw_wlan_util.c: Use cfg80211_* to determine crypto
authorJes Sorensen <Jes.Sorensen@redhat.com>
Mon, 9 Jun 2014 13:16:00 +0000 (15:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Jun 2014 20:51:47 +0000 (13:51 -0700)
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8723au/core/rtw_wlan_util.c

index 82904d067b2e7508831fd8a5d6723d510b3f8e64..043ba40fadf06fdb2b4c505884b3f676aebeb112 100644 (file)
@@ -887,7 +887,6 @@ int rtw_check_bcn_info23a(struct rtw_adapter *Adapter,
        struct ieee80211_ht_operation *pht_info;
        struct wlan_bssid_ex *bssid;
        unsigned short val16;
-       u16 wpa_len = 0, rsn_len = 0;
        u8 encryp_protocol;
        int group_cipher = 0, pairwise_cipher = 0, is_8021x = 0, r;
        u32 bcn_channel;
@@ -1009,14 +1008,14 @@ int rtw_check_bcn_info23a(struct rtw_adapter *Adapter,
                goto _mismatch;
        }
 
-       rtw_get_sec_ie23a(bssid->IEs, bssid->IELength, NULL, &rsn_len, NULL,
-                         &wpa_len);
-
-       if (rsn_len > 0)
+       p = cfg80211_find_ie(WLAN_EID_RSN, pie, pie_len);
+       if (p && p[1]) {
                encryp_protocol = ENCRYP_PROTOCOL_WPA2;
-       else if (wpa_len > 0)
+       } else if (cfg80211_find_vendor_ie(WLAN_OUI_MICROSOFT,
+                                          WLAN_OUI_TYPE_MICROSOFT_WPA,
+                                          pie, pie_len)) {
                encryp_protocol = ENCRYP_PROTOCOL_WPA;
-       else {
+       else {
                if (bssid->Privacy)
                        encryp_protocol = ENCRYP_PROTOCOL_WEP;
                else