Linux 6.9-rc4
[sfrench/cifs-2.6.git] / include / crypto / authenc.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Authenc: Simple AEAD wrapper for IPsec
4  *
5  * Copyright (c) 2007 Herbert Xu <herbert@gondor.apana.org.au>
6  */
7 #ifndef _CRYPTO_AUTHENC_H
8 #define _CRYPTO_AUTHENC_H
9
10 #include <linux/types.h>
11
12 enum {
13         CRYPTO_AUTHENC_KEYA_UNSPEC,
14         CRYPTO_AUTHENC_KEYA_PARAM,
15 };
16
17 struct crypto_authenc_key_param {
18         __be32 enckeylen;
19 };
20
21 struct crypto_authenc_keys {
22         const u8 *authkey;
23         const u8 *enckey;
24
25         unsigned int authkeylen;
26         unsigned int enckeylen;
27 };
28
29 int crypto_authenc_extractkeys(struct crypto_authenc_keys *keys, const u8 *key,
30                                unsigned int keylen);
31
32 #endif  /* _CRYPTO_AUTHENC_H */