1 /* 2 * This file is part of the openHiTLS project. 3 * 4 * openHiTLS is licensed under the Mulan PSL v2. 5 * You can use this software according to the terms and conditions of the Mulan PSL v2. 6 * You may obtain a copy of Mulan PSL v2 at: 7 * 8 * http://license.coscl.org.cn/MulanPSL2 9 * 10 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, 11 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, 12 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. 13 * See the Mulan PSL v2 for more details. 14 */ 15 16 #ifndef ASMCAP_LOCAL_H 17 #define ASMCAP_LOCAL_H 18 19 #include "hitls_build.h" 20 #ifdef HITLS_CRYPTO_ASM_CHECK 21 #include "crypt_ealinit.h" 22 23 #ifdef __cplusplus 24 extern "c" { 25 #endif 26 27 #if defined(HITLS_CRYPTO_CIPHER) 28 #if defined(HITLS_CRYPTO_AES_ASM) 29 30 int32_t CRYPT_AES_AsmCheck(void); 31 #endif // HITLS_CRYPTO_AES_ASM 32 33 #if defined(HITLS_CRYPTO_CHACHA20_ASM) 34 int32_t CRYPT_CHACHA20_AsmCheck(void); 35 #endif // HITLS_CRYPTO_CHACHA20 36 37 #if defined(HITLS_CRYPTO_CHACHA20POLY1305_ASM) 38 int32_t CRYPT_POLY1305_AsmCheck(void); 39 #endif // HITLS_CRYPTO_CHACHA20POLY1305 40 41 #if defined(HITLS_CRYPTO_SM4_ASM) 42 int32_t CRYPT_SM4_AsmCheck(void); 43 #endif // HITLS_CRYPTO_SM4 44 45 #if defined(HITLS_CRYPTO_GCM_ASM) 46 int32_t CRYPT_GHASH_AsmCheck(void); 47 #endif // HITLS_CRYPTO_GCM 48 49 #endif // HITLS_CRYPTO_CIPHER 50 51 #if defined(HITLS_CRYPTO_MD) 52 #if defined(HITLS_CRYPTO_MD5_ASM) 53 int32_t CRYPT_MD5_AsmCheck(void); 54 #endif // HITLS_CRYPTO_MD5 55 #if defined(HITLS_CRYPTO_SHA1_ASM) 56 int32_t CRYPT_SHA1_AsmCheck(void); 57 #endif // HITLS_CRYPTO_SHA1 58 59 #if defined(HITLS_CRYPTO_SHA2_ASM) 60 int32_t CRYPT_SHA2_AsmCheck(void); 61 #endif // HITLS_CRYPTO_SHA2 62 63 #if defined(HITLS_CRYPTO_SM3_ASM) 64 int32_t CRYPT_SM3_AsmCheck(void); 65 #endif // HITLS_CRYPTO_SM3 66 #endif // HITLS_CRYPTO_MD 67 68 69 #if defined(HITLS_CRYPTO_PKEY) 70 71 #if defined(HITLS_CRYPTO_BN_ASM) 72 int32_t CRYPT_BN_AsmCheck(void); 73 #endif // HITLS_CRYPTO_BN_ASM 74 75 #if defined(HITLS_CRYPTO_CURVE_NISTP256_ASM) 76 int32_t CRYPT_ECP256_AsmCheck(void); 77 #endif // HITLS_CRYPTO_ECC 78 79 #endif // HITLS_CRYPTO_PKEY 80 #ifdef __cplusplus 81 } 82 #endif 83 84 #endif // HITLS_CRYPTO_ASM_CHECK 85 #endif // ASMCAP_LOCAL_H