1#include <sys/cdefs.h>
2#include <opencrypto/cbc_mac.h>
3#include <opencrypto/xform_auth.h>
4
5/* Authentication instances */
6const struct auth_hash auth_hash_ccm_cbc_mac_128 = {
7	.type = CRYPTO_AES_CCM_CBC_MAC,
8	.name = "CBC-CCM-AES-128",
9	.keysize = AES_128_CBC_MAC_KEY_LEN,
10	.hashsize = AES_CBC_MAC_HASH_LEN,
11	.ctxsize = sizeof(struct aes_cbc_mac_ctx),
12	.blocksize = CCM_CBC_BLOCK_LEN,
13	.Init = AES_CBC_MAC_Init,
14	.Setkey = AES_CBC_MAC_Setkey,
15	.Reinit = AES_CBC_MAC_Reinit,
16	.Update = AES_CBC_MAC_Update,
17	.Final = AES_CBC_MAC_Final,
18};
19const struct auth_hash auth_hash_ccm_cbc_mac_192 = {
20	.type = CRYPTO_AES_CCM_CBC_MAC,
21	.name = "CBC-CCM-AES-192",
22	.keysize = AES_192_CBC_MAC_KEY_LEN,
23	.hashsize = AES_CBC_MAC_HASH_LEN,
24	.ctxsize = sizeof(struct aes_cbc_mac_ctx),
25	.blocksize = CCM_CBC_BLOCK_LEN,
26	.Init = AES_CBC_MAC_Init,
27	.Setkey = AES_CBC_MAC_Setkey,
28	.Reinit = AES_CBC_MAC_Reinit,
29	.Update = AES_CBC_MAC_Update,
30	.Final = AES_CBC_MAC_Final,
31};
32const struct auth_hash auth_hash_ccm_cbc_mac_256 = {
33	.type = CRYPTO_AES_CCM_CBC_MAC,
34	.name = "CBC-CCM-AES-256",
35	.keysize = AES_256_CBC_MAC_KEY_LEN,
36	.hashsize = AES_CBC_MAC_HASH_LEN,
37	.ctxsize = sizeof(struct aes_cbc_mac_ctx),
38	.blocksize = CCM_CBC_BLOCK_LEN,
39	.Init = AES_CBC_MAC_Init,
40	.Setkey = AES_CBC_MAC_Setkey,
41	.Reinit = AES_CBC_MAC_Reinit,
42	.Update = AES_CBC_MAC_Update,
43	.Final = AES_CBC_MAC_Final,
44};
45