1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2765cb46aSJouni Malinen /* 3765cb46aSJouni Malinen * Copyright 2008, Jouni Malinen <j@w1.fi> 4765cb46aSJouni Malinen */ 5765cb46aSJouni Malinen 6765cb46aSJouni Malinen #ifndef AES_CMAC_H 7765cb46aSJouni Malinen #define AES_CMAC_H 8765cb46aSJouni Malinen 9765cb46aSJouni Malinen #include <linux/crypto.h> 1026717828SArd Biesheuvel #include <crypto/hash.h> 11765cb46aSJouni Malinen 1226717828SArd Biesheuvel struct crypto_shash *ieee80211_aes_cmac_key_setup(const u8 key[], 1356c52da2SJouni Malinen size_t key_len); 1426717828SArd Biesheuvel void ieee80211_aes_cmac(struct crypto_shash *tfm, const u8 *aad, 15765cb46aSJouni Malinen const u8 *data, size_t data_len, u8 *mic); 1626717828SArd Biesheuvel void ieee80211_aes_cmac_256(struct crypto_shash *tfm, const u8 *aad, 1756c52da2SJouni Malinen const u8 *data, size_t data_len, u8 *mic); 1826717828SArd Biesheuvel void ieee80211_aes_cmac_key_free(struct crypto_shash *tfm); 19765cb46aSJouni Malinen 20765cb46aSJouni Malinen #endif /* AES_CMAC_H */ 21