From 5547a605bd6a1aaa3e17903f9192cc923042c088 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Sat, 8 Oct 2016 19:02:50 +0200 Subject: Windows EFI: don't use optimized Serpent implementation for EFI bootloader because lack of C++ support in EDKII framework --- src/Common/Crypto.c | 6 +++--- src/Common/Crypto.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src/Common') diff --git a/src/Common/Crypto.c b/src/Common/Crypto.c index 49ccbde5..f0b3759a 100644 --- a/src/Common/Crypto.c +++ b/src/Common/Crypto.c @@ -232,7 +232,7 @@ void EncipherBlocks (int cipher, void *dataPtr, void *ks, size_t blockCount) KeRestoreFloatingPointState (&floatingPointState); #endif } -#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE +#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE && !defined (_UEFI) else if (cipher == SERPENT && (blockCount >= 4) && HasSSE2() @@ -327,7 +327,7 @@ void DecipherBlocks (int cipher, void *dataPtr, void *ks, size_t blockCount) KeRestoreFloatingPointState (&floatingPointState); #endif } -#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE +#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE && !defined (_UEFI) else if (cipher == SERPENT && (blockCount >= 4) && HasSSE2() @@ -415,7 +415,7 @@ BOOL CipherSupportsIntraDataUnitParallelization (int cipher) { return (cipher == AES && IsAesHwCpuSupported()) || (cipher == GOST89) -#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE +#if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE && !defined (_UEFI) || (cipher == SERPENT && HasSSE2()) #endif ; diff --git a/src/Common/Crypto.h b/src/Common/Crypto.h index d654b0c4..8e8bace7 100644 --- a/src/Common/Crypto.h +++ b/src/Common/Crypto.h @@ -193,7 +193,7 @@ typedef struct #endif #include "Aes_hw_cpu.h" -#if !defined (TC_WINDOWS_BOOT) +#if !defined (TC_WINDOWS_BOOT) && !defined (_UEFI) # include "SerpentFast.h" #else # include "Serpent.h" -- cgit v1.2.3