summaryrefslogtreecommitdiffstats
path: root/lib/libssl/src/crypto/engine/eng_list.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libssl/src/crypto/engine/eng_list.c')
-rw-r--r--lib/libssl/src/crypto/engine/eng_list.c30
1 files changed, 4 insertions, 26 deletions
diff --git a/lib/libssl/src/crypto/engine/eng_list.c b/lib/libssl/src/crypto/engine/eng_list.c
index 939cc82b170..7f3cb355153 100644
--- a/lib/libssl/src/crypto/engine/eng_list.c
+++ b/lib/libssl/src/crypto/engine/eng_list.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: eng_list.c,v 1.18 2015/04/11 16:03:21 deraadt Exp $ */
+/* $OpenBSD: eng_list.c,v 1.19 2015/06/19 06:05:11 bcook Exp $ */
/* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL
* project 2000.
*/
@@ -351,7 +351,6 @@ ENGINE *
ENGINE_by_id(const char *id)
{
ENGINE *iterator;
- char *load_dir = NULL;
if (id == NULL) {
ENGINEerr(ENGINE_F_ENGINE_BY_ID,
@@ -381,30 +380,9 @@ ENGINE_by_id(const char *id)
}
CRYPTO_w_unlock(CRYPTO_LOCK_ENGINE);
- /* EEK! Experimental code starts */
- if (iterator)
- return iterator;
- /* Prevent infinite recusrion if we're looking for the dynamic engine. */
- if (strcmp(id, "dynamic")) {
- load_dir = ENGINESDIR;
-
- iterator = ENGINE_by_id("dynamic");
- if (!iterator ||
- !ENGINE_ctrl_cmd_string(iterator, "ID", id, 0) ||
- !ENGINE_ctrl_cmd_string(iterator, "DIR_LOAD", "2", 0) ||
- !ENGINE_ctrl_cmd_string(iterator, "DIR_ADD", load_dir, 0) ||
- !ENGINE_ctrl_cmd_string(iterator, "LIST_ADD", "1", 0) ||
- !ENGINE_ctrl_cmd_string(iterator, "LOAD", NULL, 0))
- goto notfound;
- return iterator;
- }
-
-notfound:
- ENGINE_free(iterator);
- ENGINEerr(ENGINE_F_ENGINE_BY_ID, ENGINE_R_NO_SUCH_ENGINE);
- ERR_asprintf_error_data("id=%s", id);
- return NULL;
- /* EEK! Experimental code ends */
+ if (iterator == NULL)
+ ENGINEerr(ENGINE_F_ENGINE_BY_ID, ENGINE_R_NO_SUCH_ENGINE);
+ return iterator;
}
int