1 /* SPDX-License-Identifier: GPL-2.0-only */ 1 2 /* 3 * Copyright 2014-2015, Qualcomm Atheros, Inc. 4 */ 5 6 #ifndef AES_GCM_H 7 #define AES_GCM_H 8 9 #include "aead_api.h" 10 11 #define GCM_AAD_LEN 32 12 13 static inline int ieee80211_aes_gcm_encrypt(st 14 u8 15 si 16 { 17 return aead_encrypt(tfm, j_0, aad + 2, 18 be16_to_cpup((__be 19 data, data_len, mi 20 } 21 22 static inline int ieee80211_aes_gcm_decrypt(st 23 u8 24 si 25 { 26 return aead_decrypt(tfm, j_0, aad + 2, 27 be16_to_cpup((__be 28 data, data_len, mi 29 } 30 31 static inline struct crypto_aead * 32 ieee80211_aes_gcm_key_setup_encrypt(const u8 k 33 { 34 return aead_key_setup_encrypt("gcm(aes 35 key_len, 36 } 37 38 static inline void ieee80211_aes_gcm_key_free( 39 { 40 return aead_key_free(tfm); 41 } 42 43 #endif /* AES_GCM_H */ 44
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.