Reach full compatibility with OpenSSL 1.1 #475
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Despite what the documentation[1] says the code is not fully compatible
with OpenSSL 1.1 because it relies on compatibility wrappers behind
OPENSSL_API_COMPAT.
The OpenSSL documentation on library initialization[2] explains that
none of the startup fucntions are necessary starting with 1.1. The
changelog for "changes between 1.0.2h and 1.1.0 [25 Aug 2016]"[3]
mentions several removed shutdown functions. The removal of
CRYPTO_set_locking_callbackis mentioned in a GitHub comment[4].[1] https://docs.datastax.com/en/developer/cpp-driver/2.15/topics/building/
[2] https://wiki.openssl.org/index.php/Library_Initialization
[3] https://www.openssl.org/news/changelog.html
[4] openssl/openssl#1260 (comment)