aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/wep.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2007-09-26 09:19:40 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 19:53:13 -0400
commit4f0d18e26f8bc4c6507b69aa0080d0fae807c990 (patch)
treeb9ef529b35cec6a81b8b7868c80088a30aa6bc9d /net/mac80211/wep.h
parentb2e7771e556917cc301a3308561f49b2b2272c07 (diff)
[PATCH] mac80211: consolidate decryption
Currently, we run through all three crypto algorithms for each received frame even though we have previously determined which key we have and as such already know which algorithm will be used. Change it to invoke only the needed function. Also move the WEP decrypt handler to wep.c so that fewer functions need to be non-static. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/wep.h')
-rw-r--r--net/mac80211/wep.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/mac80211/wep.h b/net/mac80211/wep.h
index bfe29e8e10aa..dfa5af143386 100644
--- a/net/mac80211/wep.h
+++ b/net/mac80211/wep.h
@@ -18,14 +18,9 @@
18 18
19int ieee80211_wep_init(struct ieee80211_local *local); 19int ieee80211_wep_init(struct ieee80211_local *local);
20void ieee80211_wep_free(struct ieee80211_local *local); 20void ieee80211_wep_free(struct ieee80211_local *local);
21void ieee80211_wep_get_iv(struct ieee80211_local *local,
22 struct ieee80211_key *key, u8 *iv);
23u8 * ieee80211_wep_add_iv(struct ieee80211_local *local, 21u8 * ieee80211_wep_add_iv(struct ieee80211_local *local,
24 struct sk_buff *skb, 22 struct sk_buff *skb,
25 struct ieee80211_key *key); 23 struct ieee80211_key *key);
26void ieee80211_wep_remove_iv(struct ieee80211_local *local,
27 struct sk_buff *skb,
28 struct ieee80211_key *key);
29void ieee80211_wep_encrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key, 24void ieee80211_wep_encrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key,
30 size_t klen, u8 *data, size_t data_len); 25 size_t klen, u8 *data, size_t data_len);
31int ieee80211_wep_decrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key, 26int ieee80211_wep_decrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key,
@@ -37,4 +32,7 @@ int ieee80211_wep_decrypt(struct ieee80211_local *local, struct sk_buff *skb,
37int ieee80211_wep_get_keyidx(struct sk_buff *skb); 32int ieee80211_wep_get_keyidx(struct sk_buff *skb);
38u8 * ieee80211_wep_is_weak_iv(struct sk_buff *skb, struct ieee80211_key *key); 33u8 * ieee80211_wep_is_weak_iv(struct sk_buff *skb, struct ieee80211_key *key);
39 34
35ieee80211_txrx_result
36ieee80211_crypto_wep_decrypt(struct ieee80211_txrx_data *rx);
37
40#endif /* WEP_H */ 38#endif /* WEP_H */