Commit Graph

234 Commits

Author SHA1 Message Date
Alex Fabijanic
e6afb8749c feat(Envelope): Add envelope to crypto #3561 2022-04-13 10:02:05 +00:00
Alex Fabijanic
c4fb51ac72 fix(openssl): pre 3.0 compile 2022-04-09 21:44:11 +02:00
Alex Fabijanic
45c456653f feat(EVP): 3.0 support
- add EVPCipher
- additional EVPPKey constructors
- tests
- fix and improve openssl-related exceptions

Transition towards 3.0 support;
deprecating direct EC and RSA interface portions.
2022-04-09 18:55:26 +00:00
Alex Fabijanic
a2870da1d0 fix(X509Certificate): add missing string format 2022-04-04 10:24:01 +00:00
Alex Fabijanic
063520c8ef Merge branch 'poco-1.11.2' into feat/openssl3-1.11.2 2022-04-04 10:20:56 +00:00
Günter Obiltschnig
b158f90381 disable OpenSSL deprecation warnings 2022-04-02 10:21:55 +02:00
Günter Obiltschnig
753757fdf8 #3525: Bad management of file in case of OpenSSLException in X509Certificate::readPEM and X509Certificate::writePEM 2022-04-02 10:21:37 +02:00
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
Günter Obiltschnig
2b3662c854 added VS2022 project files 2022-02-19 21:06:24 +01:00
Günter Obiltschnig
6341ec6350 detect ARM64 on Windows 2022-02-19 15:23:03 +01:00
Günter Obiltschnig
516eebad72 #3458: encryptString() crash on redhat/centos 8 with FIPS enabled using md5 default digest 2022-02-07 18:21:46 +01:00
Günter Obiltschnig
625b4116f2 #3448: fix version check 2022-02-07 18:07:57 +01:00
Günter Obiltschnig
11ffdc7807 manually merge #3448, part 1 (Crypto) 2022-02-07 17:00:45 +01:00
Günter Obiltschnig
22eb76d3ae #3302: MSVC: Poco hides warnings (C4996) for the C++14 attribute [[deprecated]] 2021-06-17 18:20:29 +02:00
Günter Obiltschnig
b4ee4b9f30 #3157: fix(openssl): add missing dependency to OpenSSL components 2021-06-15 14:49:38 +02:00
Günter Obiltschnig
f5de69b854 #3260: Memory leak in EVPPKey::loadKey used with files & wrong password 2021-06-15 14:43:21 +02:00
Günter Obiltschnig
aa32399e26 #3307: Poco::Crypto::X509Certificate: obtain certificate fingerprint 2021-06-15 14:36:57 +02:00
Günter Obiltschnig
46ef044d7b #3224: Remove SSL23 support from Poco/Crypto 2021-06-15 13:38:37 +02:00
Günter Obiltschnig
cae2f2dea4 #3230: ECDSADigestEngine: include missing header 2021-04-12 20:36:56 +02:00
Günter Obiltschnig
f18ee10a3c #3027 2021-04-11 17:39:59 +02:00
Günter Obiltschnig
cb1889a007 #3183: fix setPadding 2021-04-11 16:50:25 +02:00
Günter Obiltschnig
4de9a21187 make CMake files style (more) consistent 2020-02-14 11:07:32 +01:00
Günter Obiltschnig
75a86ad868 remove POCO_STATIC 2020-02-12 22:10:01 +01:00
Günter Obiltschnig
bd08e465f8 style 2020-01-24 11:08:30 +01:00
Günter Obiltschnig
a106dcbf80 fixed a warning 2020-01-23 13:29:00 +01:00
Günter Obiltschnig
0f49493d0e remove raw pointer interfaces 2020-01-23 09:50:36 +01:00
Günter Obiltschnig
9350ee13a2 fixed memory leak in testsuite 2020-01-23 09:38:25 +01:00
Günter Obiltschnig
048c4a134c style 2020-01-22 13:52:04 +01:00
Günter Obiltschnig
12db5ff31e
Merge pull request #2871 from siemens/feat/fix-x509-uft8
Add support for utf-8 characters in subject
2020-01-22 13:39:22 +01:00
Günter Obiltschnig
ba0acff719 fixed GH #2743: X509Certificate validFrom expiresOn Date parsing 2020-01-21 20:21:34 +01:00
Günter Obiltschnig
18adb1e43b code cleanup; fix move ctors and assignment 2020-01-21 17:52:43 +01:00
Joerg-Christian Boehme
885c5cbc55 Ignore tests in cmake from cppignore and set POCO_BASE environment. 2020-01-14 21:45:56 +01:00
Günter Obiltschnig
4920df18ce re-generated project files 2020-01-12 23:04:09 +01:00
Günter Obiltschnig
165f5cfd20 re-generated project files 2020-01-11 22:33:28 +01:00
Günter Obiltschnig
4c1e357e4a project file fixes 2020-01-11 12:45:39 +01:00
Günter Obiltschnig
fea390fe6a remove gradle files 2020-01-11 10:04:22 +01:00
Günter Obiltschnig
e84ab92ee0 removed x64 project files 2020-01-11 09:52:49 +01:00
Günter Obiltschnig
fe3f6405b6 updated progen files 2020-01-11 09:34:54 +01:00
Günter Obiltschnig
59898cd3c2 remove old VS project files 2020-01-10 14:26:36 +01:00
Günter Obiltschnig
c82e1c7085 cleanup 2020-01-10 13:47:57 +01:00
Günter Obiltschnig
e1f09a602b cleanup and modernization 2020-01-10 12:20:30 +01:00
Guenter Obiltschnig
d4077125cf replace deprecated OPENSSL_config() 2020-01-09 19:03:54 +00:00
Pascal Bach
435cae1084 Adjust PKCS12 tests to new subject format
The format separator changed from / to ,
2020-01-08 11:11:18 +01:00
Pascal Bach
69a7f53b02 Add support for utf-8 characters in subject
This changes the format produced by OpenSSL from being separated by / to ,
2020-01-08 10:54:01 +01:00
Günter Obiltschnig
9c197e0ed1 finally get rid of std::auto_ptr 2019-12-15 09:40:40 +01:00
Francis ANDRE
e59f37318e Add /MP option and remove /Gm as it is ignored and will be removed 2019-12-07 19:11:24 +01:00
Günter Obiltschnig
a7cbff393e
Merge pull request #2815 from brice-gros/brice.gros/1.10.0+allow-for-cmake-fetchcontent
Make Poco git repository fetchable using CMake's FetchContent
2019-11-25 21:24:16 +01:00
Günter Obiltschnig
acd7ec865b constness fix 2019-11-04 21:03:52 +01:00
Günter Obiltschnig
54413879e8
Merge pull request #2827 from neheb/patch-2
X509Certificate: Get rid of deprecated OpenSSL 1.1 APIs
2019-11-04 20:44:55 +01:00
Rosen Penev
c11d1eebb0 X509Certificate: Get rid of deprecated OpenSSL 1.1 APIs
Added a missing implicit header and added compatibility macros.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-11-04 11:42:16 -08:00