aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstate/engine/openssl
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstate/engine/openssl')
-rw-r--r--src/libstate/engine/openssl/eng_ossl.h7
-rw-r--r--src/libstate/engine/openssl/ossl_md.cpp5
2 files changed, 8 insertions, 4 deletions
diff --git a/src/libstate/engine/openssl/eng_ossl.h b/src/libstate/engine/openssl/eng_ossl.h
index c63179459..6eb5700d6 100644
--- a/src/libstate/engine/openssl/eng_ossl.h
+++ b/src/libstate/engine/openssl/eng_ossl.h
@@ -16,6 +16,11 @@ namespace Botan {
class BOTAN_DLL OpenSSL_Engine : public Engine
{
public:
+ /**
+ * Return the provider name ("openssl")
+ */
+ std::string provider_name() const { return "openssl"; }
+
#if defined(BOTAN_HAS_IF_PUBLIC_KEY_FAMILY)
IF_Operation* if_op(const BigInt&, const BigInt&, const BigInt&,
const BigInt&, const BigInt&, const BigInt&,
@@ -45,7 +50,7 @@ class BOTAN_DLL OpenSSL_Engine : public Engine
private:
BlockCipher* find_block_cipher(const std::string&) const;
StreamCipher* find_stream_cipher(const std::string&) const;
- HashFunction* find_hash(const std::string&) const;
+ HashFunction* find_hash(const SCAN_Name&, Algorithm_Factory&) const;
};
}
diff --git a/src/libstate/engine/openssl/ossl_md.cpp b/src/libstate/engine/openssl/ossl_md.cpp
index d009e4c42..04ef59f99 100644
--- a/src/libstate/engine/openssl/ossl_md.cpp
+++ b/src/libstate/engine/openssl/ossl_md.cpp
@@ -91,10 +91,9 @@ EVP_HashFunction::~EVP_HashFunction()
/*************************************************
* Look for an algorithm with this name *
*************************************************/
-HashFunction* OpenSSL_Engine::find_hash(const std::string& algo_spec) const
+HashFunction* OpenSSL_Engine::find_hash(const SCAN_Name& request,
+ Algorithm_Factory&) const
{
- SCAN_Name request(algo_spec);
-
if(request.algo_name() == "SHA-160")
return new EVP_HashFunction(EVP_sha1(), "SHA-160");