aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine/sse2_eng/eng_sse2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/sse2_eng/eng_sse2.cpp')
-rw-r--r--src/engine/sse2_eng/eng_sse2.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/engine/sse2_eng/eng_sse2.cpp b/src/engine/sse2_eng/eng_sse2.cpp
index 9f68a070e..07c625c7c 100644
--- a/src/engine/sse2_eng/eng_sse2.cpp
+++ b/src/engine/sse2_eng/eng_sse2.cpp
@@ -6,6 +6,7 @@
*/
#include <botan/eng_sse2.h>
+#include <botan/cpuid.h>
#if defined(BOTAN_HAS_SHA1_SSE2)
#include <botan/sha1_sse2.h>
@@ -21,6 +22,9 @@ BlockCipher*
SSE2_Assembler_Engine::find_block_cipher(const SCAN_Name& request,
Algorithm_Factory&) const
{
+ if(!CPUID::has_sse2())
+ return 0;
+
#if defined(BOTAN_HAS_SERPENT_SSE2)
if(request.algo_name() == "Serpent")
return new Serpent_SSE2;
@@ -33,6 +37,9 @@ HashFunction*
SSE2_Assembler_Engine::find_hash(const SCAN_Name& request,
Algorithm_Factory&) const
{
+ if(!CPUID::has_sse2())
+ return 0;
+
#if defined(BOTAN_HAS_SHA1_SSE2)
if(request.algo_name() == "SHA-160")
return new SHA_160_SSE2;