diff options
Diffstat (limited to 'src/crypto/crypto.c')
-rw-r--r-- | src/crypto/crypto.c | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/src/crypto/crypto.c b/src/crypto/crypto.c index 34d04b4..d70c8c7 100644 --- a/src/crypto/crypto.c +++ b/src/crypto/crypto.c @@ -17,7 +17,7 @@ #include "internal.h" -#if !defined(OPENSSL_NO_ASM) && \ +#if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_STATIC_ARMCAP) && \ (defined(OPENSSL_X86) || defined(OPENSSL_X86_64) || \ defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)) /* x86, x86_64 and the ARMs need to record the result of a cpuid call for the @@ -57,7 +57,27 @@ uint32_t OPENSSL_ia32cap_P[4] = {0}; #include <openssl/arm_arch.h> -#if defined(__ARM_NEON__) +#if defined(OPENSSL_STATIC_ARMCAP) + +uint32_t OPENSSL_armcap_P = +#if defined(OPENSSL_STATIC_ARMCAP_NEON) || defined(__ARM_NEON__) + ARMV7_NEON | ARMV7_NEON_FUNCTIONAL | +#endif +#if defined(OPENSSL_STATIC_ARMCAP_AES) + ARMV8_AES | +#endif +#if defined(OPENSSL_STATIC_ARMCAP_SHA1) + ARMV8_SHA1 | +#endif +#if defined(OPENSSL_STATIC_ARMCAP_SHA256) + ARMV8_SHA256 | +#endif +#if defined(OPENSSL_STATIC_ARMCAP_PMULL) + ARMV8_PMULL | +#endif + 0; + +#elif defined(__ARM_NEON__) uint32_t OPENSSL_armcap_P = ARMV7_NEON | ARMV7_NEON_FUNCTIONAL; #else uint32_t OPENSSL_armcap_P = ARMV7_NEON_FUNCTIONAL; @@ -110,3 +130,9 @@ const char *SSLeay_version(int unused) { unsigned long SSLeay(void) { return OPENSSL_VERSION_NUMBER; } + +int CRYPTO_malloc_init(void) { + return 1; +} + +void ENGINE_load_builtin_engines(void) {} |