1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Software WEP encryption implementation 4*4882a593Smuzhiyun * Copyright 2002, Jouni Malinen <jkmaline@cc.hut.fi> 5*4882a593Smuzhiyun * Copyright 2003, Instant802 Networks, Inc. 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef WEP_H 9*4882a593Smuzhiyun #define WEP_H 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #include <linux/skbuff.h> 12*4882a593Smuzhiyun #include <linux/types.h> 13*4882a593Smuzhiyun #include "ieee80211_i.h" 14*4882a593Smuzhiyun #include "key.h" 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun void ieee80211_wep_init(struct ieee80211_local *local); 17*4882a593Smuzhiyun int ieee80211_wep_encrypt_data(struct arc4_ctx *ctx, u8 *rc4key, 18*4882a593Smuzhiyun size_t klen, u8 *data, size_t data_len); 19*4882a593Smuzhiyun int ieee80211_wep_encrypt(struct ieee80211_local *local, 20*4882a593Smuzhiyun struct sk_buff *skb, 21*4882a593Smuzhiyun const u8 *key, int keylen, int keyidx); 22*4882a593Smuzhiyun int ieee80211_wep_decrypt_data(struct arc4_ctx *ctx, u8 *rc4key, 23*4882a593Smuzhiyun size_t klen, u8 *data, size_t data_len); 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun ieee80211_rx_result 26*4882a593Smuzhiyun ieee80211_crypto_wep_decrypt(struct ieee80211_rx_data *rx); 27*4882a593Smuzhiyun ieee80211_tx_result 28*4882a593Smuzhiyun ieee80211_crypto_wep_encrypt(struct ieee80211_tx_data *tx); 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #endif /* WEP_H */ 31