YuOpenSSL is a Delphi port of the OpenSSL cryptography and SSL/TSL library. All code is statically compiled into applications. OpenSSL DLLs are not needed. Over 5000 functions, procedures, constants, and types are ready to use in a single Delphi unit.
Add identifiers used by ICS (Internet Component Suite):
Some Pascal functions for C macros.
Some ENGINE_… constants.
Some PKCS7_… types.
YuOpenSSL 1.0.0 – 17 Feb 2021
Update to OpenSSL 1.1.1j.
YuOpenSSL 0.5.0 Beta – 30 Jan 2021
Convert some C macros to Pascal for better ICS (Internet Component Suite) support.
Fix wrong type in Indy (Internet Direct). It caused a compiler error because YuOpenSS types are more strict than Indy types.
Add Synapse thread demo to illustrate thread memory cleanup.
YuOpenSSL 0.4.0 Beta – 29 Dec 2020
Add ICS 8.65 files modified to use YuOpenSSL instead of the OpenSSL DLLs.
Add some new OpenSSL API functions required for ICS 8.65.
YuOpenSSL 0.3.0 Beta – 9 Dec 2020
Update to OpenSSL 1.1.1i.
Fix a high risk potential NULL pointer de-reference in GENERAL_NAME_cmp (CVE-2020-1971).
Add more than 150 new OpenSSL API functions:
PKCS8*() and PKCS12*() functions.
New Synapse TCP/IP and serial library support, plus basic demos.
Small update to the Indy (Internet Direct) OpenSSL 1.1.1 IOHandler.
YuOpenSSL 0.2.1 Alpha – 25 Nov 2020
Add EVP_VerifyInit, EVP_VerifyInit_ex, and EVP_VerifyUpdate, ported from OpenSSL macros.
Fix memory leaks in ICS (Internet Component Suite). They surfaced after the OverbyteIcsSslWebServ.dpr sample project was linked against YuOpenSSL. A total of > 10k memory allocations reported not freed, adding up to > 500k bytes of leaked memory. The leaks were easy to spot because YuOpenSSL does not use the OpenSSL DLLs but compiles all OpenSSL code into the application binary. As a side effect, YuOpenSSL uses the Delphi memory manager and by default allows memory trackers to see OpenSSL memory allocations. Otherwise this does normally not happen when the OpenSSL DLLs employ their own memory management. The leaks then sum up in the DLLs' memory space, and out of sight of Delphi's memory trackers.
YuOpenSSL 0.2.0 Alpha – 16 Nov 2020
Update to OpenSSL 1.1.1h.
Add hundreds of OpenSSL API functions, procedures, types, and constants.
New Indy (Internet Direct) support, plus basic demos. The Indy OpenSSL 1.1.1 IOHandler is still in development. Until stable, consider this a proof of concept and use with great care.
New demos to create certificates.
YuOpenSSL 0.1.0 Alpha – 30 Jul 2020
Initial public release, based on OpenSSL 1.1.1g.
products/openssl/history.txt · Last modified: 2021/03/27 15:25 (external edit)