-
Notifications
You must be signed in to change notification settings - Fork 171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test_provider.rb: Make a legacy provider test optional. #721
test_provider.rb: Make a legacy provider test optional. #721
Conversation
I update FreeBSD 13/14 around 1st Feb. But I did only |
Thanks for the info. I think the commands that you ran triggered the issue. In my observation, the Below are the results on the freebsd13 server.
The point for this PR is that the issue is more than the FreeBSD. People can install OpenSSL with configuring |
f38f331
to
6edeaa5
Compare
This reverts commit 9b7543d. The case not providing the legacy provider can happen not only in FreeBSD but also in other platforms. The fix is addressed in the next commit.
6edeaa5
to
92b5310
Compare
Add the case of the OpenSSL that doesn't install the legacy provider.
In some cases such as OpenSSL package in FreeBSD[1], the legacy provider is not installed intentionally. So, we omit a test depending the legacy provider if the legacy provider is not loadable. For the test_openssl_provider_names test, we use base provider[2] instead of legacy provider, because we would expect the base provider is always loadable in OpenSSL 3 for now. * [1] https://www.freshports.org/security/openssl/ * [2] https://wiki.openssl.org/index.php/OpenSSL_3.0#Providers
92b5310
to
7223da7
Compare
@rhenium I rebased this PR on the latest master branch. Could you review this PR? Thanks. |
Thank you for digging into this. It looks good to me! |
This PR is to omit (skip) tests requiring the legacy provider if it is not loadable. The issue was found by another PR #718.
In some cases, the legacy provider is not installed intentionally. So, we omit a test requiring the legacy provider if the legacy provider is not loadable.
In the test_openssl_provider_names test, we use base provider instead of legacy provider, because we would expect the base provider is always loadable in OpenSSL 3 for now.
You can see the list of the standard providers below.
https://wiki.openssl.org/index.php/OpenSSL_3.0#Providers
This PR has 2 commits. The 1st commit is to add the no-legacy case to the CI. I chose OpenSSL head branch for the no-legacy case. Because we can notice soon if the specification around the legacy provider is changed. The 2nd commit is to omit (skip) a test requiring the legacy provider. In the
test_openssl_provider_names
, I replaced the used legacy provider with base provider. We don't need to use the legacy provider in the test.I tested this PR on my forked repository.
Below is the CI result on the 1st commit. The no-legacy case failed as expected.
https://github.com/junaruga/ruby-openssl/actions/runs/7834063675/job/21376475009
Below is the CI result on the 2nd commit. the no-legacy case passed with the omitted message "Omission: Only for OpenSSL with legacy provider".
https://github.com/junaruga/ruby-openssl/actions/runs/7834165493/job/21376788379#step:12:632