summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/openssl/ossl_engine.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/ext/openssl/ossl_engine.c b/ext/openssl/ossl_engine.c
index 5b58c4f1e6..c3f3dc4014 100644
--- a/ext/openssl/ossl_engine.c
+++ b/ext/openssl/ossl_engine.c
@@ -55,7 +55,10 @@ ossl_engine_s_load(int argc, VALUE *argv, VALUE klass)
VALUE name;
rb_scan_args(argc, argv, "01", &name);
- if(NIL_P(name)) ENGINE_load_builtin_engines();
+ if(NIL_P(name)){
+ ENGINE_load_builtin_engines();
+ return Qtrue;
+ }
StringValue(name);
OSSL_ENGINE_LOAD_IF_MATCH(openssl);
OSSL_ENGINE_LOAD_IF_MATCH(dynamic);
@@ -70,7 +73,8 @@ ossl_engine_s_load(int argc, VALUE *argv, VALUE klass)
#ifdef HAVE_ENGINE_LOAD_OPENBSD_DEV_CRYPTO
OSSL_ENGINE_LOAD_IF_MATCH(openbsd_dev_crypto);
#endif
- rb_warning("no such engine `%s'", RSTRING(name)->ptr);
+ rb_warning("no such builtin loader for `%s'", RSTRING(name)->ptr);
+ return Qnil;
#endif /* HAVE_ENGINE_LOAD_BUILTIN_ENGINES */
}