Commit 6b142341 authored by Chris Opperman's avatar Chris Opperman Committed by Greg Kroah-Hartman
Browse files

staging: wlan-ng: improved readability of function prism2_add_key



Improve readability of prism2_add_key:
a) Reduce nesting and removed goto statement by using more return statements.

Signed-off-by: default avatarChris Opperman <eklikeroomys@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent c238d7b1
Loading
Loading
Loading
Loading
+13 −27
Original line number Diff line number Diff line
@@ -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,
	if (params->cipher != WLAN_CIPHER_SUITE_WEP40 &&
	    params->cipher != WLAN_CIPHER_SUITE_WEP104) {
		pr_debug("Unsupported cipher suite\n");
		return -EFAULT;
	}

	if (prism2_domibset_uint32(wlandev,
				   DIDmib_dot11smt_dot11PrivacyTable_dot11WEPDefaultKeyID,
						key_index);
		if (result)
			goto exit;
				   key_index))
		return -EFAULT;

	/* 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:
		pr_debug("Unsupported cipher suite\n");
		result = 1;
	}

exit:
	if (result)
		err = -EFAULT;

	return err;
	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,