blob: af3272284e852c23e64c78d534ac09ac5befa821 [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0-only */
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002/*
3 * Copyright 2002-2004, Instant802 Networks, Inc.
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00004 */
5
6#ifndef WPA_H
7#define WPA_H
8
9#include <linux/skbuff.h>
10#include <linux/types.h>
11#include "ieee80211_i.h"
12
13ieee80211_tx_result
14ieee80211_tx_h_michael_mic_add(struct ieee80211_tx_data *tx);
15ieee80211_rx_result
16ieee80211_rx_h_michael_mic_verify(struct ieee80211_rx_data *rx);
17
18ieee80211_tx_result
19ieee80211_crypto_tkip_encrypt(struct ieee80211_tx_data *tx);
20ieee80211_rx_result
21ieee80211_crypto_tkip_decrypt(struct ieee80211_rx_data *rx);
22
23ieee80211_tx_result
24ieee80211_crypto_ccmp_encrypt(struct ieee80211_tx_data *tx,
25 unsigned int mic_len);
26ieee80211_rx_result
27ieee80211_crypto_ccmp_decrypt(struct ieee80211_rx_data *rx,
28 unsigned int mic_len);
29
30ieee80211_tx_result
31ieee80211_crypto_aes_cmac_encrypt(struct ieee80211_tx_data *tx);
32ieee80211_tx_result
33ieee80211_crypto_aes_cmac_256_encrypt(struct ieee80211_tx_data *tx);
34ieee80211_rx_result
35ieee80211_crypto_aes_cmac_decrypt(struct ieee80211_rx_data *rx);
36ieee80211_rx_result
37ieee80211_crypto_aes_cmac_256_decrypt(struct ieee80211_rx_data *rx);
38ieee80211_tx_result
39ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx);
40ieee80211_rx_result
41ieee80211_crypto_aes_gmac_decrypt(struct ieee80211_rx_data *rx);
42ieee80211_tx_result
43ieee80211_crypto_hw_encrypt(struct ieee80211_tx_data *tx);
44ieee80211_rx_result
45ieee80211_crypto_hw_decrypt(struct ieee80211_rx_data *rx);
46
47ieee80211_tx_result
48ieee80211_crypto_gcmp_encrypt(struct ieee80211_tx_data *tx);
49ieee80211_rx_result
50ieee80211_crypto_gcmp_decrypt(struct ieee80211_rx_data *rx);
51
52#endif /* WPA_H */