forked from dotnet/runtime
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Support compiling against OpenSSL 3 headers
Building against OpenSSL 3's headers fails to compile, as X509_V_ERR_INVALID_CA has changed from 24 to 79, tripping a static assert. * Rename the managed X509VerifyStatusCode enum to X509VerifyStatusCodeUniversal, to represent the name/values that are present in all current versions of OpenSSL (1.0.2, 1.1.1, 3.0 alpha) * Add new enums for the name/value pairs that are unique to a given version * Add an X509VerifyStatusCode struct that just wraps the int and is a faux-union of the various enums * Use the OpenSSL runtime version to determine which mapping table to use (after the Universal table fails) In addition to that, there are a few const-related changes in the 3.0 headers that are addressed. `runtime/src/libraries/Native$ ./build_native.sh -portablebuild=false` on systems where find_package(OpenSSL) maps to 3.0 succeeds with these changes. Portable builds still fail. Not all tests pass with OpenSSL 3.0 (alpha 13) with these changes, but it does reduce to three categories of error: * ICryptoTransform reset/reuse tests fail (OpenSSL regression is open) * DSA small key generation fails (OpenSSL has fixed the regression for the next alpha/beta release) * Some OuterLoop X.509 tests are failing as positively revoked when they expect ambiguous revocation states (investigation pending)
- Loading branch information
Showing
6 changed files
with
299 additions
and
96 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.