staging: rtl8723au: rtw_cfg80211_ap_set_encryption() is only called for WIFI_AP_STATE
authorJes Sorensen <Jes.Sorensen@redhat.com>
Tue, 24 Jun 2014 13:03:36 +0000 (15:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Jun 2014 17:51:00 +0000 (13:51 -0400)
No point checking it again in here, twice!

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c

index f44d0f4629d35931c8ab5c1dfcf4850fae7feca8..bbc4ac50bf9b8d218ef0e899ade25757a40fabc7 100644 (file)
@@ -509,7 +509,6 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
        u8 wep_key_idx;
        struct sta_info *psta = NULL, *pbcmc_sta = NULL;
        struct rtw_adapter *padapter = netdev_priv(dev);
-       struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
        struct security_priv *psecuritypriv = &padapter->securitypriv;
        struct sta_priv *pstapriv = &padapter->stapriv;
 
@@ -598,7 +597,7 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
 
        }
 
-       if (!psta && check_fwstate(pmlmepriv, WIFI_AP_STATE)) { /*  group key */
+       if (!psta) {    /*  group key */
                if (param->u.crypt.set_tx == 0) {       /* group key */
                        if (keyparms->cipher == WLAN_CIPHER_SUITE_WEP40 ||
                            keyparms->cipher == WLAN_CIPHER_SUITE_WEP104) {
@@ -620,7 +619,8 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
                                DBG_8723A("%s, set group_key, TKIP\n",
                                          __func__);
 
-                               psecuritypriv->dot118021XGrpPrivacy = WLAN_CIPHER_SUITE_TKIP;
+                               psecuritypriv->dot118021XGrpPrivacy =
+                                       WLAN_CIPHER_SUITE_TKIP;
 
                                memcpy(psecuritypriv->
                                       dot118021XGrpKey[param->u.crypt.idx].
@@ -645,7 +645,8 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
                                        DBG_8723A("%s, set group_key, CCMP\n",
                                          __func__);
 
-                               psecuritypriv->dot118021XGrpPrivacy = WLAN_CIPHER_SUITE_CCMP;
+                               psecuritypriv->dot118021XGrpPrivacy =
+                                       WLAN_CIPHER_SUITE_CCMP;
 
                                memcpy(psecuritypriv->
                                       dot118021XGrpKey[param->u.crypt.idx].
@@ -685,151 +686,134 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
                goto exit;
        }
 
-       if (psecuritypriv->dot11AuthAlgrthm ==
-           dot11AuthAlgrthm_8021X && psta) {   /*  psk/802_1x */
-               if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) {
-                       if (param->u.crypt.set_tx == 1) {
-                               /* pairwise key */
-                               memcpy(psta->dot118021x_UncstKey.skey,
-                                      param->u.crypt.key,
-                                      (param->u.crypt.key_len >
-                                       16 ? 16 : param->u.crypt.key_len));
+       if (psecuritypriv->dot11AuthAlgrthm == dot11AuthAlgrthm_8021X && psta) {
+               /*  psk/802_1x */
+               if (param->u.crypt.set_tx == 1) {
+                       /* pairwise key */
+                       memcpy(psta->dot118021x_UncstKey.skey,
+                              param->u.crypt.key,
+                              (param->u.crypt.key_len >
+                               16 ? 16 : param->u.crypt.key_len));
 
-                               if (keyparms->cipher ==
-                                   WLAN_CIPHER_SUITE_WEP40 ||
-                                   keyparms->cipher ==
-                                   WLAN_CIPHER_SUITE_WEP104) {
-                                       DBG_8723A("%s, set pairwise key, WEP\n",
-                                                 __func__);
-
-                                       psta->dot118021XPrivacy = WLAN_CIPHER_SUITE_WEP40;
-                                       if (param->u.crypt.key_len == 13) {
-                                               psta->dot118021XPrivacy =
-                                                       WLAN_CIPHER_SUITE_WEP104;
-                                       }
-                               } else if (keyparms->cipher ==
-                                          WLAN_CIPHER_SUITE_TKIP) {
-                                       DBG_8723A("%s, set pairwise key, "
-                                                 "TKIP\n", __func__);
+                       if (keyparms->cipher == WLAN_CIPHER_SUITE_WEP40 ||
+                           keyparms->cipher == WLAN_CIPHER_SUITE_WEP104) {
+                               DBG_8723A("%s, set pairwise key, WEP\n",
+                                         __func__);
 
+                               psta->dot118021XPrivacy =
+                                       WLAN_CIPHER_SUITE_WEP40;
+                               if (param->u.crypt.key_len == 13) {
                                        psta->dot118021XPrivacy =
-                                               WLAN_CIPHER_SUITE_TKIP;
+                                               WLAN_CIPHER_SUITE_WEP104;
+                               }
+                       } else if (keyparms->cipher == WLAN_CIPHER_SUITE_TKIP) {
+                               DBG_8723A("%s, set pairwise key, TKIP\n",
+                                         __func__);
 
-                                       /* DEBUG_ERR("set key length :param->u.crypt.key_len =%d\n", param->u.crypt.key_len); */
-                                       /* set mic key */
-                                       memcpy(psta->dot11tkiptxmickey.skey,
-                                              &param->u.crypt.key[16], 8);
-                                       memcpy(psta->dot11tkiprxmickey.skey,
-                                              &param->u.crypt.key[24], 8);
+                               psta->dot118021XPrivacy =
+                                       WLAN_CIPHER_SUITE_TKIP;
 
-                                       psecuritypriv->busetkipkey = 1;
+                               /* DEBUG_ERR("set key length :param->u.crypt.key_len =%d\n", param->u.crypt.key_len); */
+                               /* set mic key */
+                               memcpy(psta->dot11tkiptxmickey.skey,
+                                      &param->u.crypt.key[16], 8);
+                               memcpy(psta->dot11tkiprxmickey.skey,
+                                      &param->u.crypt.key[24], 8);
 
-                               } else if (keyparms->cipher ==
-                                          WLAN_CIPHER_SUITE_CCMP) {
-                                       DBG_8723A("%s, set pairwise key, "
-                                                 "CCMP\n", __func__);
+                               psecuritypriv->busetkipkey = 1;
 
-                                       psta->dot118021XPrivacy =
-                                               WLAN_CIPHER_SUITE_CCMP;
-                               } else {
-                                       DBG_8723A("%s, set pairwise key, "
-                                                 "none\n", __func__);
+                       } else if (keyparms->cipher == WLAN_CIPHER_SUITE_CCMP) {
+                               DBG_8723A("%s, set pairwise key, CCMP\n",
+                                         __func__);
 
-                                       psta->dot118021XPrivacy = 0;
-                               }
+                               psta->dot118021XPrivacy =
+                                       WLAN_CIPHER_SUITE_CCMP;
+                       } else {
+                               DBG_8723A("%s, set pairwise key, none\n",
+                                         __func__);
+
+                               psta->dot118021XPrivacy = 0;
+                       }
 
-                               set_pairwise_key(padapter, psta);
+                       set_pairwise_key(padapter, psta);
 
-                               psta->ieee8021x_blocked = false;
+                       psta->ieee8021x_blocked = false;
 
-                               psta->bpairwise_key_installed = true;
-                       } else {        /* group key??? */
-                               if (keyparms->cipher ==
-                                   WLAN_CIPHER_SUITE_WEP40 ||
-                                   keyparms->cipher ==
-                                   WLAN_CIPHER_SUITE_WEP104) {
-                                       memcpy(psecuritypriv->
-                                              dot118021XGrpKey[param->u.crypt.
-                                                               idx].skey,
-                                              param->u.crypt.key,
-                                              (param->u.crypt.key_len >
-                                               16 ? 16 : param->u.crypt.
-                                               key_len));
+                       psta->bpairwise_key_installed = true;
+               } else {        /* group key??? */
+                       if (keyparms->cipher == WLAN_CIPHER_SUITE_WEP40 ||
+                           keyparms->cipher == WLAN_CIPHER_SUITE_WEP104) {
+                               memcpy(psecuritypriv->
+                                      dot118021XGrpKey[param->u.crypt.
+                                                       idx].skey,
+                                      param->u.crypt.key,
+                                      (param->u.crypt.key_len >
+                                       16 ? 16 : param->u.crypt.key_len));
 
+                               psecuritypriv->dot118021XGrpPrivacy =
+                                       WLAN_CIPHER_SUITE_WEP40;
+                               if (param->u.crypt.key_len == 13) {
                                        psecuritypriv->dot118021XGrpPrivacy =
-                                               WLAN_CIPHER_SUITE_WEP40;
-                                       if (param->u.crypt.key_len == 13) {
-                                               psecuritypriv->
-                                                   dot118021XGrpPrivacy =
-                                                       WLAN_CIPHER_SUITE_WEP104;
-                                       }
-                               } else if (keyparms->cipher ==
-                                          WLAN_CIPHER_SUITE_TKIP) {
-                                       psecuritypriv->dot118021XGrpPrivacy =
-                                           WLAN_CIPHER_SUITE_TKIP;
+                                               WLAN_CIPHER_SUITE_WEP104;
+                               }
+                       } else if (keyparms->cipher == WLAN_CIPHER_SUITE_TKIP) {
+                               psecuritypriv->dot118021XGrpPrivacy =
+                                       WLAN_CIPHER_SUITE_TKIP;
 
-                                       memcpy(psecuritypriv->
-                                              dot118021XGrpKey[param->u.crypt.
-                                                               idx].skey,
-                                              param->u.crypt.key,
-                                              (param->u.crypt.key_len >
-                                               16 ? 16 : param->u.crypt.
-                                               key_len));
+                               memcpy(psecuritypriv->
+                                      dot118021XGrpKey[param->u.crypt.
+                                                       idx].skey,
+                                      param->u.crypt.key,
+                                      (param->u.crypt.key_len >
+                                       16 ? 16 : param->u.crypt.key_len));
 
-                                       /* DEBUG_ERR("set key length :param->u"
-                                          ".crypt.key_len =%d\n",
-                                          param->u.crypt.key_len); */
-                                       /* set mic key */
-                                       memcpy(psecuritypriv->
-                                              dot118021XGrptxmickey[param->u.
-                                                                    crypt.idx].
-                                              skey, &param->u.crypt.key[16],
-                                              8);
-                                       memcpy(psecuritypriv->
-                                              dot118021XGrprxmickey[param->u.
-                                                                    crypt.idx].
-                                              skey, &param->u.crypt.key[24],
-                                              8);
+                               /* DEBUG_ERR("set key length :param->u"
+                                  ".crypt.key_len =%d\n",
+                                  param->u.crypt.key_len); */
+                               /* set mic key */
+                               memcpy(psecuritypriv->
+                                      dot118021XGrptxmickey[param->u.
+                                                            crypt.idx].skey,
+                                      &param->u.crypt.key[16], 8);
+                               memcpy(psecuritypriv->
+                                      dot118021XGrprxmickey[param->u.
+                                                            crypt.idx].skey,
+                                      &param->u.crypt.key[24], 8);
 
-                                       psecuritypriv->busetkipkey = 1;
+                               psecuritypriv->busetkipkey = 1;
 
-                               } else if (keyparms->cipher ==
-                                          WLAN_CIPHER_SUITE_CCMP) {
-                                       psecuritypriv->dot118021XGrpPrivacy =
-                                               WLAN_CIPHER_SUITE_CCMP;
+                       } else if (keyparms->cipher == WLAN_CIPHER_SUITE_CCMP) {
+                               psecuritypriv->dot118021XGrpPrivacy =
+                                       WLAN_CIPHER_SUITE_CCMP;
 
-                                       memcpy(psecuritypriv->
-                                              dot118021XGrpKey[param->u.crypt.
-                                                               idx].skey,
-                                              param->u.crypt.key,
-                                              (param->u.crypt.key_len >
-                                               16 ? 16 : param->u.crypt.
-                                               key_len));
-                               } else {
-                                       psecuritypriv->dot118021XGrpPrivacy =
-                                               0;
-                               }
+                               memcpy(psecuritypriv->
+                                      dot118021XGrpKey[param->u.crypt.
+                                                       idx].skey,
+                                      param->u.crypt.key,
+                                      (param->u.crypt.key_len >
+                                       16 ? 16 : param->u.crypt.key_len));
+                       } else {
+                               psecuritypriv->dot118021XGrpPrivacy = 0;
+                       }
 
-                               psecuritypriv->dot118021XGrpKeyid =
-                                       param->u.crypt.idx;
+                       psecuritypriv->dot118021XGrpKeyid = param->u.crypt.idx;
 
-                               psecuritypriv->binstallGrpkey = 1;
+                       psecuritypriv->binstallGrpkey = 1;
 
-                               psecuritypriv->dot11PrivacyAlgrthm =
-                                       psecuritypriv->dot118021XGrpPrivacy;
+                       psecuritypriv->dot11PrivacyAlgrthm =
+                               psecuritypriv->dot118021XGrpPrivacy;
 
-                               set_group_key(padapter, param->u.crypt.key,
-                                             psecuritypriv->
-                                             dot118021XGrpPrivacy,
-                                             param->u.crypt.idx);
+                       set_group_key(padapter, param->u.crypt.key,
+                                     psecuritypriv->dot118021XGrpPrivacy,
+                                     param->u.crypt.idx);
 
-                               pbcmc_sta = rtw_get_bcmc_stainfo23a(padapter);
-                               if (pbcmc_sta) {
-                                       /* rx will use bmc_sta's
-                                          dot118021XPrivacy */
-                                       pbcmc_sta->ieee8021x_blocked = false;
-                                       pbcmc_sta->dot118021XPrivacy = psecuritypriv->dot118021XGrpPrivacy;
-                               }
+                       pbcmc_sta = rtw_get_bcmc_stainfo23a(padapter);
+                       if (pbcmc_sta) {
+                               /* rx will use bmc_sta's
+                                  dot118021XPrivacy */
+                               pbcmc_sta->ieee8021x_blocked = false;
+                               pbcmc_sta->dot118021XPrivacy =
+                                       psecuritypriv->dot118021XGrpPrivacy;
                        }
                }
        }
@@ -837,7 +821,6 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev,
 exit:
 
        return ret;
-
 }
 #endif
 
This page took 0.030311 seconds and 5 git commands to generate.