From 24c9adcaebf8ffaaf3f4eb68fe43f2ff23688543 Mon Sep 17 00:00:00 2001 From: Kazuki Yamaguchi Date: Sat, 24 Dec 2022 02:02:13 +0900 Subject: [PATCH] [ruby/openssl] test/openssl/test_pkey.rb: allow failures in test_s_generate_parameters Commit https://github.com/ruby/openssl/commit/f2e2a5e5ed8e ("test/openssl/test_pkey.rb: allow failures in test_s_generate_parameters", 2022-12-23) was completely bogus. The problem in OpenSSL 3.0.0-3.0.5 is that errors from the callback are sometimes silently suppressed. https://github.com/ruby/openssl/commit/ccc1594492 --- test/openssl/test_pkey.rb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/openssl/test_pkey.rb b/test/openssl/test_pkey.rb index 1219f3f1d7..2b99e8f374 100644 --- a/test/openssl/test_pkey.rb +++ b/test/openssl/test_pkey.rb @@ -40,6 +40,11 @@ class OpenSSL::TestPKey < OpenSSL::PKeyTestCase } # Parameter generation callback is called + if openssl?(3, 0, 0, 0) && !openssl?(3, 0, 0, 6) + # Errors in BN_GENCB were not properly handled. This special pend is to + # suppress failures on Ubuntu 22.04, which uses OpenSSL 3.0.2. + pend "unstable test on OpenSSL 3.0.[0-5]" + end cb_called = [] assert_raise(RuntimeError) { OpenSSL::PKey.generate_parameters("DSA") { |*args| @@ -47,11 +52,6 @@ class OpenSSL::TestPKey < OpenSSL::PKeyTestCase raise "exit!" if cb_called.size == 3 } } - if !cb_called && openssl?(3, 0, 0) && !openssl?(3, 0, 6) - # Errors in BN_GENCB were not properly handled. This special pend is to - # suppress failures on Ubuntu 22.04, which uses OpenSSL 3.0.2. - pend "unstable test on OpenSSL 3.0.[0-5]" - end assert_not_empty cb_called end