Staging: rtl8192u: Add function to improve code quality
authorCristina Opriceana <cristina.opriceana@gmail.com>
Mon, 9 Mar 2015 18:38:48 +0000 (20:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 15 Mar 2015 17:41:10 +0000 (18:41 +0100)
This patch introduces a new function for the authentication response
error check in the  ieee80211_rx_frame_softmac() function to fix the
indentation problem. It also adds the iotAction variable in the new
function to fix the "more than 80 characters per line" warning.

Signed-off-by: Cristina Opriceana <cristina.opriceana@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c

index d93e5fd4c46eb9cf568aaa4e692d2fc3df2119b8..13e7618ac7ca5e4d80f1f8c2eb2b6a72b96e0662 100644 (file)
@@ -1920,6 +1920,66 @@ static void ieee80211_process_action(struct ieee80211_device *ieee,
        return;
 
 }
+
+void ieee80211_check_auth_response(struct ieee80211_device *ieee,
+                                  struct sk_buff *skb)
+{
+       /* default support N mode, disable halfNmode */
+       bool bSupportNmode = true, bHalfSupportNmode = false;
+       u16 errcode;
+       u8 *challenge;
+       int chlen = 0;
+       u32 iotAction;
+
+       errcode = auth_parse(skb, &challenge, &chlen);
+       if (!errcode) {
+               if (ieee->open_wep || !challenge) {
+                       ieee->state = IEEE80211_ASSOCIATING_AUTHENTICATED;
+                       ieee->softmac_stats.rx_auth_rs_ok++;
+                       iotAction = ieee->pHTInfo->IOTAction;
+                       if (!(iotAction & HT_IOT_ACT_PURE_N_MODE)) {
+                               if (!ieee->GetNmodeSupportBySecCfg(ieee->dev)) {
+                                       /* WEP or TKIP encryption */
+                                       if (IsHTHalfNmodeAPs(ieee)) {
+                                               bSupportNmode = true;
+                                               bHalfSupportNmode = true;
+                                       } else {
+                                               bSupportNmode = false;
+                                               bHalfSupportNmode = false;
+                                       }
+                                       printk("==========>to link with AP using SEC(%d, %d)",
+                                               bSupportNmode,
+                                               bHalfSupportNmode);
+                               }
+                       }
+                       /* Dummy wirless mode setting- avoid encryption issue */
+                       if (bSupportNmode) {
+                               /* N mode setting */
+                               ieee->SetWirelessMode(ieee->dev,
+                                               ieee->current_network.mode);
+                       } else {
+                               /* b/g mode setting - TODO */
+                               ieee->SetWirelessMode(ieee->dev, IEEE_G);
+                       }
+
+                       if (ieee->current_network.mode == IEEE_N_24G &&
+                                       bHalfSupportNmode == true) {
+                               printk("===============>entern half N mode\n");
+                               ieee->bHalfWirelessN24GMode = true;
+                       } else
+                               ieee->bHalfWirelessN24GMode = false;
+
+                       ieee80211_associate_step2(ieee);
+               } else {
+                       ieee80211_auth_challenge(ieee, challenge, chlen);
+               }
+       } else {
+               ieee->softmac_stats.rx_auth_rs_err++;
+               IEEE80211_DEBUG_MGMT("Auth response status code 0x%x", errcode);
+               ieee80211_associate_abort(ieee);
+       }
+}
+
 inline int
 ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
                        struct ieee80211_rx_stats *rx_stats, u16 type,
@@ -1927,12 +1987,9 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
 {
        struct ieee80211_hdr_3addr *header = (struct ieee80211_hdr_3addr *) skb->data;
        u16 errcode;
-       u8 *challenge;
-       int chlen=0;
        int aid;
        struct ieee80211_assoc_response_frame *assoc_resp;
 //     struct ieee80211_info_element *info_element;
-       bool bSupportNmode = true, bHalfSupportNmode = false; //default support N mode, disable halfNmode
 
        if(!ieee->proto_started)
                return 0;
@@ -2014,67 +2071,15 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
        case IEEE80211_STYPE_AUTH:
 
                if (ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE){
-                       if (ieee->state == IEEE80211_ASSOCIATING_AUTHENTICATING &&
-                       ieee->iw_mode == IW_MODE_INFRA){
-
-                                       IEEE80211_DEBUG_MGMT("Received authentication response");
-
-                                       errcode = auth_parse(skb, &challenge, &chlen);
-                                       if (!errcode) {
-                                               if(ieee->open_wep || !challenge){
-                                                       ieee->state = IEEE80211_ASSOCIATING_AUTHENTICATED;
-                                                       ieee->softmac_stats.rx_auth_rs_ok++;
-                                                       if(!(ieee->pHTInfo->IOTAction&HT_IOT_ACT_PURE_N_MODE))
-                                                       {
-                                                               if (!ieee->GetNmodeSupportBySecCfg(ieee->dev))
-                                                               {
-                                                                                       // WEP or TKIP encryption
-                                                                       if(IsHTHalfNmodeAPs(ieee))
-                                                                       {
-                                                                               bSupportNmode = true;
-                                                                               bHalfSupportNmode = true;
-                                                                       }
-                                                                       else
-                                                                       {
-                                                                               bSupportNmode = false;
-                                                                               bHalfSupportNmode = false;
-                                                                       }
-                                                               printk("==========>to link with AP using SEC(%d, %d)", bSupportNmode, bHalfSupportNmode);
-                                                               }
-                                                       }
-                                                       /* Dummy wirless mode setting to avoid encryption issue */
-                                                       if(bSupportNmode) {
-                                                               //N mode setting
-                                                               ieee->SetWirelessMode(ieee->dev, \
-                                                                               ieee->current_network.mode);
-                                                       }else{
-                                                               //b/g mode setting
-                                                               /*TODO*/
-                                                               ieee->SetWirelessMode(ieee->dev, IEEE_G);
-                                                       }
-
-                                                       if (ieee->current_network.mode == IEEE_N_24G && bHalfSupportNmode == true)
-                                                       {
-                                                               printk("===============>entern half N mode\n");
-                                                               ieee->bHalfWirelessN24GMode = true;
-                                                       }
-                                                       else
-                                                               ieee->bHalfWirelessN24GMode = false;
-
-                                                       ieee80211_associate_step2(ieee);
-                                               }else{
-                                                       ieee80211_auth_challenge(ieee, challenge, chlen);
-                                               }
-                                       }else{
-                                               ieee->softmac_stats.rx_auth_rs_err++;
-                                               IEEE80211_DEBUG_MGMT("Authentication response status code 0x%x",errcode);
-                                               ieee80211_associate_abort(ieee);
-                                       }
+                       if (ieee->state == IEEE80211_ASSOCIATING_AUTHENTICATING
+                               && ieee->iw_mode == IW_MODE_INFRA) {
 
-                               }else if (ieee->iw_mode == IW_MODE_MASTER){
-                                       ieee80211_rx_auth_rq(ieee, skb);
-                               }
+                               IEEE80211_DEBUG_MGMT("Received auth response");
+                               ieee80211_check_auth_response(ieee, skb);
+                       } else if (ieee->iw_mode == IW_MODE_MASTER) {
+                               ieee80211_rx_auth_rq(ieee, skb);
                        }
+               }
                break;
 
        case IEEE80211_STYPE_PROBE_REQ: