poco/NetSSL_OpenSSL/src
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
..
AcceptCertificateHandler.cpp #3299: NetSSL: Allow per-Context InvalidCertificateHandler 2021-06-06 18:11:05 +02:00
CertificateHandlerFactory.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
CertificateHandlerFactoryMgr.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
ConsoleCertificateHandler.cpp #3299: NetSSL: Allow per-Context InvalidCertificateHandler 2021-06-06 18:11:05 +02:00
Context.cpp #2895, #2935: support OCSP stapling 2021-06-23 08:36:38 +02:00
FTPSClientSession.cpp fix header comments 2020-01-23 18:57:05 +01:00
FTPSStreamFactory.cpp fix header comments 2020-01-23 18:57:05 +01:00
HTTPSClientSession.cpp testReuseSession: remove bad checks for session reuse 2021-06-16 18:30:30 +02:00
HTTPSSessionInstantiator.cpp #3089: HTTPSessionFactory does not support HTTPClientSession::ProxyConfig 2021-06-15 09:45:01 +02:00
HTTPSStreamFactory.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
InvalidCertificateHandler.cpp #3299: NetSSL: Allow per-Context InvalidCertificateHandler 2021-06-06 18:11:05 +02:00
KeyConsoleHandler.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
KeyFileHandler.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
PrivateKeyFactory.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
PrivateKeyFactoryMgr.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
PrivateKeyPassphraseHandler.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
RejectCertificateHandler.cpp #3299: NetSSL: Allow per-Context InvalidCertificateHandler 2021-06-06 18:11:05 +02:00
SecureServerSocket.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
SecureServerSocketImpl.cpp #2418: SecureServerSocket doesn't work with IpV6 2021-06-15 10:23:22 +02:00
SecureSMTPClientSession.cpp SecureSMTPClientSession now uses _host from SMTPClientSession 2019-05-16 14:35:19 +02:00
SecureSocketImpl.cpp Basic support for OpenSSL 3.0.0 (#3448) 2022-03-29 13:23:44 -05:00
SecureStreamSocket.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
SecureStreamSocketImpl.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
Session.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
SSLException.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
SSLManager.cpp #2895, #2935: support OCSP stapling 2021-06-23 08:36:38 +02:00
Utility.cpp Remove \$Id`$ headers 2017-09-09 11:14:06 +02:00
VerificationErrorArgs.cpp #3299: NetSSL: Allow per-Context InvalidCertificateHandler 2021-06-06 18:11:05 +02:00
X509Certificate.cpp code cleanup; fix move ctors and assignment 2020-01-21 17:52:43 +01:00