You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For environments that do provide a supported Ruby version but do not provide a TLS 1.3-compatible
OpenSSL versions, it would be great to avoid a module load time exception and simply not have
1.3 as a supported version. Conditionally populating the map of TLS aliases in Bunny::Transport
should be enough.
However, a quick investigation suggests that it is not entirely trivial: older OpenSSL module
versions do not provide the same set of constants, and reproducing an environment with, say,
Ubuntu 18.04 and Ruby 2.6 will take extra effort:
Before Ruby 2.6, OpenSSL::SSL::TLS1_2_VERSION and similar constants were not available
Using defined?(OpenSSL::SSL::TLS1_3_VERSION) should be enough to work around this but to test it I'd have to build Ruby 2.6 on Ubuntu 18.04
Building Ruby 2.6 on arm64 hosts does not seem to be possible (likely because it pre-dates ARM64 Macs in wide use)
The text was updated successfully, but these errors were encountered:
michaelklishin
changed the title
Conditionally alias constants for TLSv1.3
Conditionally alias constants for TLSv1.3 to support older OpenSSL releases
Jan 25, 2023
See #629, #646.
For environments that do provide a supported Ruby version but do not provide a TLS 1.3-compatible
OpenSSL versions, it would be great to avoid a module load time exception and simply not have
1.3 as a supported version. Conditionally populating the map of TLS aliases in
Bunny::Transport
should be enough.
However, a quick investigation suggests that it is not entirely trivial: older
OpenSSL
moduleversions do not provide the same set of constants, and reproducing an environment with, say,
Ubuntu 18.04 and Ruby 2.6 will take extra effort:
OpenSSL::SSL::TLS1_2_VERSION
and similar constants were not availabledefined?(OpenSSL::SSL::TLS1_3_VERSION)
should be enough to work around this but to test it I'd have to build Ruby 2.6 on Ubuntu 18.04arm64
hosts does not seem to be possible (likely because it pre-dates ARM64 Macs in wide use)The text was updated successfully, but these errors were encountered: