mac80211: move key tfm setup
authorJohannes Berg <johannes.berg@intel.com>
Tue, 10 Aug 2010 07:46:39 +0000 (09:46 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 16 Aug 2010 20:45:20 +0000 (16:45 -0400)
There's no need to keep separate if statements
for setting up the CCMP/AES-CMAC tfm structs;
move that into the existing switch statement.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/key.c

index 3203d1d..9c27c53 100644 (file)
@@ -277,19 +277,6 @@ struct ieee80211_key *ieee80211_key_alloc(u32 cipher, int idx, size_t key_len,
                                        key->u.ccmp.rx_pn[i][j] =
                                                seq[CCMP_PN_LEN - j - 1];
                }
-               break;
-       case WLAN_CIPHER_SUITE_AES_CMAC:
-               key->conf.iv_len = 0;
-               key->conf.icv_len = sizeof(struct ieee80211_mmie);
-               if (seq)
-                       for (j = 0; j < 6; j++)
-                               key->u.aes_cmac.rx_pn[j] = seq[6 - j - 1];
-               break;
-       }
-       memcpy(key->conf.key, key_data, key_len);
-       INIT_LIST_HEAD(&key->list);
-
-       if (cipher == WLAN_CIPHER_SUITE_CCMP) {
                /*
                 * Initialize AES key state here as an optimization so that
                 * it does not need to be initialized for every packet.
@@ -300,9 +287,13 @@ struct ieee80211_key *ieee80211_key_alloc(u32 cipher, int idx, size_t key_len,
                        kfree(key);
                        key = ERR_PTR(err);
                }
-       }
-
-       if (cipher == WLAN_CIPHER_SUITE_AES_CMAC) {
+               break;
+       case WLAN_CIPHER_SUITE_AES_CMAC:
+               key->conf.iv_len = 0;
+               key->conf.icv_len = sizeof(struct ieee80211_mmie);
+               if (seq)
+                       for (j = 0; j < 6; j++)
+                               key->u.aes_cmac.rx_pn[j] = seq[6 - j - 1];
                /*
                 * Initialize AES key state here as an optimization so that
                 * it does not need to be initialized for every packet.
@@ -314,7 +305,10 @@ struct ieee80211_key *ieee80211_key_alloc(u32 cipher, int idx, size_t key_len,
                        kfree(key);
                        key = ERR_PTR(err);
                }
+               break;
        }
+       memcpy(key->conf.key, key_data, key_len);
+       INIT_LIST_HEAD(&key->list);
 
        return key;
 }