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