aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/ath5k/base.c2
-rw-r--r--drivers/net/wireless/b43/xmit.c2
-rw-r--r--drivers/net/wireless/b43legacy/xmit.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl3945-base.c7
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c6
5 files changed, 10 insertions, 9 deletions
diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c
index 4e5c8fc35200..3854619f3514 100644
--- a/drivers/net/wireless/ath5k/base.c
+++ b/drivers/net/wireless/ath5k/base.c
@@ -1319,7 +1319,7 @@ ath5k_txbuf_setup(struct ath5k_softc *sc, struct ath5k_buf *bf,
1319 pktlen = skb->len; 1319 pktlen = skb->len;
1320 1320
1321 if (!(ctl->flags & IEEE80211_TXCTL_DO_NOT_ENCRYPT)) { 1321 if (!(ctl->flags & IEEE80211_TXCTL_DO_NOT_ENCRYPT)) {
1322 keyidx = ctl->key_idx; 1322 keyidx = ctl->hw_key->hw_key_idx;
1323 pktlen += ctl->icv_len; 1323 pktlen += ctl->icv_len;
1324 } 1324 }
1325 1325
diff --git a/drivers/net/wireless/b43/xmit.c b/drivers/net/wireless/b43/xmit.c
index 19aefbfb2c93..88491947a209 100644
--- a/drivers/net/wireless/b43/xmit.c
+++ b/drivers/net/wireless/b43/xmit.c
@@ -235,7 +235,7 @@ int b43_generate_txhdr(struct b43_wldev *dev,
235 235
236 plcp_fragment_len = fragment_len + FCS_LEN; 236 plcp_fragment_len = fragment_len + FCS_LEN;
237 if (use_encryption) { 237 if (use_encryption) {
238 u8 key_idx = (u16) (txctl->key_idx); 238 u8 key_idx = txctl->hw_key->hw_key_idx;
239 struct b43_key *key; 239 struct b43_key *key;
240 int wlhdr_len; 240 int wlhdr_len;
241 size_t iv_len; 241 size_t iv_len;
diff --git a/drivers/net/wireless/b43legacy/xmit.c b/drivers/net/wireless/b43legacy/xmit.c
index dcad2491a606..fc83dab6e2c7 100644
--- a/drivers/net/wireless/b43legacy/xmit.c
+++ b/drivers/net/wireless/b43legacy/xmit.c
@@ -232,7 +232,7 @@ static int generate_txhdr_fw3(struct b43legacy_wldev *dev,
232 232
233 plcp_fragment_len = fragment_len + FCS_LEN; 233 plcp_fragment_len = fragment_len + FCS_LEN;
234 if (use_encryption) { 234 if (use_encryption) {
235 u8 key_idx = (u16)(txctl->key_idx); 235 u8 key_idx = txctl->hw_key->hw_key_idx;
236 struct b43legacy_key *key; 236 struct b43legacy_key *key;
237 int wlhdr_len; 237 int wlhdr_len;
238 size_t iv_len; 238 size_t iv_len;
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 13925b627e3b..7bdffa9cfea6 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -2391,7 +2391,8 @@ static void iwl3945_build_tx_cmd_hwcrypto(struct iwl3945_priv *priv,
2391 struct sk_buff *skb_frag, 2391 struct sk_buff *skb_frag,
2392 int last_frag) 2392 int last_frag)
2393{ 2393{
2394 struct iwl3945_hw_key *keyinfo = &priv->stations[ctl->key_idx].keyinfo; 2394 struct iwl3945_hw_key *keyinfo =
2395 &priv->stations[ctl->hw_key->hw_key_idx].keyinfo;
2395 2396
2396 switch (keyinfo->alg) { 2397 switch (keyinfo->alg) {
2397 case ALG_CCMP: 2398 case ALG_CCMP:
@@ -2414,7 +2415,7 @@ static void iwl3945_build_tx_cmd_hwcrypto(struct iwl3945_priv *priv,
2414 2415
2415 case ALG_WEP: 2416 case ALG_WEP:
2416 cmd->cmd.tx.sec_ctl = TX_CMD_SEC_WEP | 2417 cmd->cmd.tx.sec_ctl = TX_CMD_SEC_WEP |
2417 (ctl->key_idx & TX_CMD_SEC_MSK) << TX_CMD_SEC_SHIFT; 2418 (ctl->hw_key->hw_key_idx & TX_CMD_SEC_MSK) << TX_CMD_SEC_SHIFT;
2418 2419
2419 if (keyinfo->keylen == 13) 2420 if (keyinfo->keylen == 13)
2420 cmd->cmd.tx.sec_ctl |= TX_CMD_SEC_KEY128; 2421 cmd->cmd.tx.sec_ctl |= TX_CMD_SEC_KEY128;
@@ -2422,7 +2423,7 @@ static void iwl3945_build_tx_cmd_hwcrypto(struct iwl3945_priv *priv,
2422 memcpy(&cmd->cmd.tx.key[3], keyinfo->key, keyinfo->keylen); 2423 memcpy(&cmd->cmd.tx.key[3], keyinfo->key, keyinfo->keylen);
2423 2424
2424 IWL_DEBUG_TX("Configuring packet for WEP encryption " 2425 IWL_DEBUG_TX("Configuring packet for WEP encryption "
2425 "with key %d\n", ctl->key_idx); 2426 "with key %d\n", ctl->hw_key->hw_key_idx);
2426 break; 2427 break;
2427 2428
2428 default: 2429 default:
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index c8cbf70600da..e43ea5377d8e 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -1926,7 +1926,7 @@ static void iwl4965_build_tx_cmd_hwcrypto(struct iwl_priv *priv,
1926 struct iwl_wep_key *wepkey; 1926 struct iwl_wep_key *wepkey;
1927 int keyidx = 0; 1927 int keyidx = 0;
1928 1928
1929 BUG_ON(ctl->key_idx > 3); 1929 BUG_ON(ctl->hw_key->hw_key_idx > 3);
1930 1930
1931 switch (keyinfo->alg) { 1931 switch (keyinfo->alg) {
1932 case ALG_CCMP: 1932 case ALG_CCMP:
@@ -1945,11 +1945,11 @@ static void iwl4965_build_tx_cmd_hwcrypto(struct iwl_priv *priv,
1945 break; 1945 break;
1946 1946
1947 case ALG_WEP: 1947 case ALG_WEP:
1948 wepkey = &priv->wep_keys[ctl->key_idx]; 1948 wepkey = &priv->wep_keys[ctl->hw_key->hw_key_idx];
1949 cmd->cmd.tx.sec_ctl = 0; 1949 cmd->cmd.tx.sec_ctl = 0;
1950 if (priv->default_wep_key) { 1950 if (priv->default_wep_key) {
1951 /* the WEP key was sent as static */ 1951 /* the WEP key was sent as static */
1952 keyidx = ctl->key_idx; 1952 keyidx = ctl->hw_key->hw_key_idx;
1953 memcpy(&cmd->cmd.tx.key[3], wepkey->key, 1953 memcpy(&cmd->cmd.tx.key[3], wepkey->key,
1954 wepkey->key_size); 1954 wepkey->key_size);
1955 if (wepkey->key_size == WEP_KEY_LEN_128) 1955 if (wepkey->key_size == WEP_KEY_LEN_128)