From a558bd6f93f316fcee5f410b10fa890447ed78a6 Mon Sep 17 00:00:00 2001 From: lloyd Date: Wed, 12 Nov 2008 19:53:19 +0000 Subject: Fix memory leaks in PBE_PKCS5v20 and get_pbe --- src/pbe/get_pbe.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/pbe/get_pbe.cpp') diff --git a/src/pbe/get_pbe.cpp b/src/pbe/get_pbe.cpp index 5fa0291c8..961da4afc 100644 --- a/src/pbe/get_pbe.cpp +++ b/src/pbe/get_pbe.cpp @@ -42,11 +42,11 @@ PBE* get_pbe(const std::string& algo_spec) Algorithm_Factory& af = global_state().algorithm_factory(); - const BlockCipher* block_cipher = af.make_block_cipher(cipher_algo); + const BlockCipher* block_cipher = af.prototype_block_cipher(cipher_algo); if(!block_cipher) throw Algorithm_Not_Found(cipher_algo); - const HashFunction* hash_function = af.make_hash_function(digest_name); + const HashFunction* hash_function = af.prototype_hash_function(digest_name); if(!hash_function) throw Algorithm_Not_Found(digest_name); @@ -99,11 +99,13 @@ PBE* get_pbe(const OID& pbe_oid, DataSource& params) Algorithm_Factory& af = global_state().algorithm_factory(); - const BlockCipher* block_cipher = af.make_block_cipher(cipher_algo); + const BlockCipher* block_cipher = af.prototype_block_cipher(cipher_algo); if(!block_cipher) throw Algorithm_Not_Found(cipher_algo); - const HashFunction* hash_function = af.make_hash_function(digest_name); + const HashFunction* hash_function = + af.prototype_hash_function(digest_name); + if(!hash_function) throw Algorithm_Not_Found(digest_name); -- cgit v1.2.3