poco/NetSSL_OpenSSL
Robin Lee 3bab3548f4
Basic support for OpenSSL 3.0.0 (#3448)
* updated README.md

* Create close-inactive-issues.yml

* check return codes of EVP_CIPHER_CTX_new and EVP_CipherInit

Especially with OpenSSL 3, it is possible that EVP_CipherInit may fail even when
passed a non-null cipher[1]. Without the checking, it will finally get to a
segfault.

[1] https://github.com/openssl/openssl/issues/16864

* Automatically load default and legacy providers with OpenSSL 3

Without the legacy provider [1], some ciphers are not available. For example,
the 'des-ecb' one used by test sutie is missed and the test will fail.

[1] OSSL_PROVIDER-LEGACY(7ossl)

* Make p12 ca order the same as pem

OpenSSL < 3 returns p12 ca order in reversed order. This is fixed
in OpenSSL 3. We work around it with old OpenSSL.

See:
https://github.com/openssl/openssl/issues/16421
https://github.com/openssl/openssl/pull/12641
f5eb85eb0f

* Implement SSL abort handling on OpenSSL 3

On an unexpected EOF, versions before OpenSSL 3.0 returned SSL_ERROR_SYSCALL,
nothing was added to the error stack, and errno was 0. Since OpenSSL 3.0 the
returned error is SSL_ERROR_SSL with a meaningful error on the error stack.[1]

[1] SSL_GET_ERROR(3ossl)

Co-authored-by: Günter Obiltschnig <guenter.obiltschnig@appinf.com>
Co-authored-by: Robin Lee <cheeselee@fedoraproject.org>
Co-authored-by: Aleksandar Fabijanic <aleks-f@users.noreply.github.com>
2022-03-29 13:23:44 -05:00
..
cmake #3157: fix(openssl): add missing dependency to OpenSSL components 2021-06-15 14:49:38 +02:00
doc new trunk (base for 1.5) 2012-04-23 01:14:34 +00:00
include/Poco/Net #2895, #2935: support OCSP stapling 2021-06-23 08:36:38 +02:00
samples added VS2022 project files 2022-02-19 21:06:24 +01:00
src Basic support for OpenSSL 3.0.0 (#3448) 2022-03-29 13:23:44 -05:00
testsuite added VS2022 project files 2022-02-19 21:06:24 +01:00
CMakeLists.txt make CMake files style (more) consistent 2020-02-14 11:07:32 +01:00
dependencies new trunk (base for 1.5) 2012-04-23 01:14:34 +00:00
Makefile fixes and improvements to FTP(S)ClientSession 2020-01-23 17:55:30 +01:00
NetSSL_OpenSSL_vs90.sln change EOL to 'native' 2012-04-29 18:52:25 +00:00
NetSSL_OpenSSL_vs90.vcproj re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs140.sln re-generated project files 2020-01-11 22:33:28 +01:00
NetSSL_OpenSSL_vs140.vcxproj re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs140.vcxproj.filters re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs150.sln re-generated project files 2020-01-11 22:33:28 +01:00
NetSSL_OpenSSL_vs150.vcxproj re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs150.vcxproj.filters re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs160.sln re-generated project files 2020-01-11 22:33:28 +01:00
NetSSL_OpenSSL_vs160.vcxproj re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs160.vcxproj.filters re-generated project files 2020-01-23 18:07:55 +01:00
NetSSL_OpenSSL_vs170.sln added VS2022 project files 2022-02-19 21:06:24 +01:00
NetSSL_OpenSSL_vs170.vcxproj added VS2022 project files 2022-02-19 21:06:24 +01:00
NetSSL_OpenSSL_vs170.vcxproj.filters added VS2022 project files 2022-02-19 21:06:24 +01:00
NetSSL_OpenSSL.progen updated progen files 2020-01-11 09:34:54 +01:00