1 /* 2 * Software WEP encryption implementation 3 * Copyright 2002, Jouni Malinen <jkmaline@cc.hut.fi> 4 * Copyright 2003, Instant802 Networks, Inc. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 */ 10 11 #ifndef WEP_H 12 #define WEP_H 13 14 #include <linux/skbuff.h> 15 #include <linux/types.h> 16 #include "ieee80211_i.h" 17 #include "key.h" 18 19 int ieee80211_wep_init(struct ieee80211_local *local); 20 void ieee80211_wep_free(struct ieee80211_local *local); 21 void ieee80211_wep_encrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key, 22 size_t klen, u8 *data, size_t data_len); 23 int ieee80211_wep_decrypt_data(struct crypto_blkcipher *tfm, u8 *rc4key, 24 size_t klen, u8 *data, size_t data_len); 25 int ieee80211_wep_encrypt(struct ieee80211_local *local, struct sk_buff *skb, 26 struct ieee80211_key *key); 27 int ieee80211_wep_decrypt(struct ieee80211_local *local, struct sk_buff *skb, 28 struct ieee80211_key *key); 29 bool ieee80211_wep_is_weak_iv(struct sk_buff *skb, struct ieee80211_key *key); 30 31 ieee80211_rx_result 32 ieee80211_crypto_wep_decrypt(struct ieee80211_rx_data *rx); 33 ieee80211_tx_result 34 ieee80211_crypto_wep_encrypt(struct ieee80211_tx_data *tx); 35 36 #endif /* WEP_H */ 37