1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2f0706e82SJiri Benc /* 3f0706e82SJiri Benc * Software WEP encryption implementation 4f0706e82SJiri Benc * Copyright 2002, Jouni Malinen <jkmaline@cc.hut.fi> 5f0706e82SJiri Benc * Copyright 2003, Instant802 Networks, Inc. 6f0706e82SJiri Benc */ 7f0706e82SJiri Benc 8f0706e82SJiri Benc #ifndef WEP_H 9f0706e82SJiri Benc #define WEP_H 10f0706e82SJiri Benc 11f0706e82SJiri Benc #include <linux/skbuff.h> 12f0706e82SJiri Benc #include <linux/types.h> 13f0706e82SJiri Benc #include "ieee80211_i.h" 142c8dccc7SJohannes Berg #include "key.h" 15f0706e82SJiri Benc 16*4a65cc24SLuca Coelho void ieee80211_wep_init(struct ieee80211_local *local); 175fdb3735SArd Biesheuvel int ieee80211_wep_encrypt_data(struct arc4_ctx *ctx, u8 *rc4key, 18f0706e82SJiri Benc size_t klen, u8 *data, size_t data_len); 19fffd0934SJohannes Berg int ieee80211_wep_encrypt(struct ieee80211_local *local, 20fffd0934SJohannes Berg struct sk_buff *skb, 21fffd0934SJohannes Berg const u8 *key, int keylen, int keyidx); 225fdb3735SArd Biesheuvel int ieee80211_wep_decrypt_data(struct arc4_ctx *ctx, u8 *rc4key, 23f0706e82SJiri Benc size_t klen, u8 *data, size_t data_len); 24f0706e82SJiri Benc 259ae54c84SJohannes Berg ieee80211_rx_result 265cf121c3SJohannes Berg ieee80211_crypto_wep_decrypt(struct ieee80211_rx_data *rx); 279ae54c84SJohannes Berg ieee80211_tx_result 285cf121c3SJohannes Berg ieee80211_crypto_wep_encrypt(struct ieee80211_tx_data *tx); 294f0d18e2SJohannes Berg 30f0706e82SJiri Benc #endif /* WEP_H */ 31