xref: /linux/net/mac80211/aead_api.h (revision 96ac6d435100450f0565708d9b885ea2a7400e0a)
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License version 2 as
4  * published by the Free Software Foundation.
5  */
6 
7 #ifndef _AEAD_API_H
8 #define _AEAD_API_H
9 
10 #include <crypto/aead.h>
11 #include <linux/crypto.h>
12 
13 struct crypto_aead *
14 aead_key_setup_encrypt(const char *alg, const u8 key[],
15 		       size_t key_len, size_t mic_len);
16 
17 int aead_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
18 		 size_t aad_len, u8 *data,
19 		 size_t data_len, u8 *mic);
20 
21 int aead_decrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
22 		 size_t aad_len, u8 *data,
23 		 size_t data_len, u8 *mic);
24 
25 void aead_key_free(struct crypto_aead *tfm);
26 
27 #endif /* _AEAD_API_H */
28