OSDN Git Service

staging: wlan-ng: improved readability of function prism2_add_key
authorChris Opperman <eklikeroomys@gmail.com>
Fri, 22 Jun 2018 15:29:02 +0000 (17:29 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Jun 2018 13:10:51 +0000 (22:10 +0900)
Improve readability of prism2_add_key:
a) Reduce nesting and removed goto statement by using more return statements.

Signed-off-by: Chris Opperman <eklikeroomys@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wlan-ng/cfg80211.c

index 07c52e3..d4cf09b 100644 (file)
@@ -148,40 +148,26 @@ static int prism2_add_key(struct wiphy *wiphy, struct net_device *dev,
        struct wlandevice *wlandev = dev->ml_priv;
        u32 did;
 
-       int err = 0;
-       int result = 0;
-
        if (key_index >= NUM_WEPKEYS)
                return -EINVAL;
 
-       switch (params->cipher) {
-       case WLAN_CIPHER_SUITE_WEP40:
-       case WLAN_CIPHER_SUITE_WEP104:
-               result = prism2_domibset_uint32(wlandev,
-                                               DIDmib_dot11smt_dot11PrivacyTable_dot11WEPDefaultKeyID,
-                                               key_index);
-               if (result)
-                       goto exit;
-
-               /* send key to driver */
-               did = DIDmib_dot11smt_dot11WEPDefaultKeysTable_key(key_index + 1);
-
-               result = prism2_domibset_pstr32(wlandev, did,
-                                               params->key_len, params->key);
-               if (result)
-                       goto exit;
-               break;
-
-       default:
+       if (params->cipher != WLAN_CIPHER_SUITE_WEP40 &&
+           params->cipher != WLAN_CIPHER_SUITE_WEP104) {
                pr_debug("Unsupported cipher suite\n");
-               result = 1;
+               return -EFAULT;
        }
 
-exit:
-       if (result)
-               err = -EFAULT;
+       if (prism2_domibset_uint32(wlandev,
+                                  DIDmib_dot11smt_dot11PrivacyTable_dot11WEPDefaultKeyID,
+                                  key_index))
+               return -EFAULT;
 
-       return err;
+       /* send key to driver */
+       did = DIDmib_dot11smt_dot11WEPDefaultKeysTable_key(key_index + 1);
+
+       if (prism2_domibset_pstr32(wlandev, did, params->key_len, params->key))
+               return -EFAULT;
+       return 0;
 }
 
 static int prism2_get_key(struct wiphy *wiphy, struct net_device *dev,