Add loaded dynamic ENGINEs to list. Always add a dynamically loaded ENGINE to list. Otherwise it can cause problems when multiply loaded, especially if it adds new public key methods. For all current engines we only want a single implementation anyway.
diff --git a/crypto/engine/eng_list.c b/crypto/engine/eng_list.c index 27846ed..95c8589 100644 --- a/crypto/engine/eng_list.c +++ b/crypto/engine/eng_list.c
@@ -408,6 +408,7 @@ !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;