File 8753-crypto-Skip-entire-engine_SUITE-if-notsup.patch of Package erlang
From 9f921b0ec768e4cdffda116c53cbe38cee6fdb6e Mon Sep 17 00:00:00 2001
From: Sverker Eriksson <sverker@erlang.org>
Date: Tue, 20 Jun 2023 15:29:57 +0200
Subject: [PATCH 13/14] crypto: Skip entire engine_SUITE if notsup
---
lib/crypto/test/engine_SUITE.erl | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git a/lib/crypto/test/engine_SUITE.erl b/lib/crypto/test/engine_SUITE.erl
index 8907d3968f..b2c25bdcae 100644
--- a/lib/crypto/test/engine_SUITE.erl
+++ b/lib/crypto/test/engine_SUITE.erl
@@ -136,20 +136,23 @@ groups() ->
init_per_suite(Config) ->
- try {os:type(), crypto:info_lib()} of
- {_, [{_,_, <<"OpenSSL 1.0.1s-freebsd 1 Mar 2016">>}]} ->
+ try {engine_supported(), os:type(), crypto:info_lib()} of
+ {false,_,[{_,_,OpenSSLversion}]} ->
+ {skip, "Engine not supported by " ++ OpenSSLversion};
+
+ {_,_, [{_,_, <<"OpenSSL 1.0.1s-freebsd 1 Mar 2016">>}]} ->
{skip, "Problem with engine on OpenSSL 1.0.1s-freebsd"};
- {_, [{_,_,<<"LibreSSL 2.1.",_/binary>>}]} ->
+ {_,_, [{_,_,<<"LibreSSL 2.1.",_/binary>>}]} ->
{skip, "Problem with engine on older LibreSSL 2.1.*"};
- {{unix,darwin}, _} ->
+ {_,{unix,darwin}, _} ->
{skip, "Engine unsupported on Darwin"};
-
- {{win32,_}, _} ->
+
+ {_,{win32,_}, _} ->
{skip, "Engine unsupported on Windows"};
-
- {OS, Res} ->
+
+ {_,OS, Res} ->
ct:log("crypto:info_lib() -> ~p\nos:type() -> ~p", [Res,OS]),
try crypto:start() of
ok ->
@@ -166,6 +169,11 @@ init_per_suite(Config) ->
end_per_suite(_Config) ->
ok.
+engine_supported() ->
+ try crypto:engine_list(), true
+ catch error:notsup -> false
+ end.
+
%%--------------------------------------------------------------------
init_per_group(engine_stored_key, Config) ->
group_load_engine(Config, [engine_method_rsa]);
--
2.35.3