DelphiUdIT 176 Posted March 13, 2023 (edited) Hello everyone, sometimes it's good to have some good news in the forums and not always requests for support (even if these always improve technical skills). With Alexandria Rad Studio 10.3 I tried to enable TLS 1.3 support using a trunk version of Indy "https://github.com/mezen/Indy/tree/NewOpenSSL_PR" already described in issue 299. Uninstalled Indy from RAD STUDIO. Known Issues: - Lost support for FMX LivePreview (which I don't use). - Each time Rad Studio is closed, a runtime error is generated in the RTL library.... It is not recursive and when OK it disappears without a trace. I only close RAD Studio 1 or 2 times a day so it doesn't give me any problems. Care must be taken to remove all references to the original Indy sources in the RAD STUDIO LIBRARY path. To make it faster I saved the Windows registry with REGEDIT, edited with a NOTEPAD removing all references to INDY from the various keys and re-imported again with REGEDIT. I then entered the new paths (Core, Protocols, System, OpenSSL) of the new archive (unzipped in a directory on the disk) again in RAD Studio. Without touching anything, recompiling the old project with native OpenSSL 1.0.2 support worked perfectly. Then I modified the source by inserting a $DEFINE and some $IFDEFs to easily switch from version 1.1.1 to version 1.0.2 and vice versa. Version 1.1.1 actually only needs to specify the security keys (cipher) to use which are different from those of 1.0.2, and obviously have access to the two OpenSSL 1.1.1 DLLs. Everything works, with TLS 1.3 support and automatic downgrade to TLS 1.2 (as already reported in other TOPICs). Changing the $DEFINE and recompiling switches to the old "original" version with TLS 1.2 support with OpenSSL 1.0.2 All third-party components (obviously in source format) that use Indy work perfectly even with the new version once recompiled. I haven't tested all of my projects that use Indy to see if there were any issues, but the last 10 recompiled projects didn't produce any glitches. When I have some time I will try to reinstall RAD STUDIO from scratch and directly upgrade the Indy TRUNK in the original RAD Studio version just to see if by recompiling from there you can avoid LIBRARY PATH updates (except the OPENSSL which you have to add by hand) and above all if you manage to avoid the error when closing RAD Studio. Bye P.S.: the project is an HTTPS server directly derived from an Indy demo. It is online in Internet without any filter, protection or other with no issue at all after more than one years in two systems Windows desktop and Linux server (now the Linux server is not anymore online). Edited March 13, 2023 by DelphiUdIT 2 2 Share this post Link to post
Dmitry Belkevich 0 Posted June 7, 2023 Hi! Could you please share version with OpenSSL 1.1+ support? Share this post Link to post
Remy Lebeau 1394 Posted June 7, 2023 8 hours ago, Dmitry Belkevich said: Hi! Could you please share version with OpenSSL 1.1+ support? It is a pull request in Indy's GitHup repo, it has not been merged into Indy's main code yet: https://github.com/IndySockets/Indy/pull/299 Also see this recent discussion: https://github.com/mezen/Indy/issues/12 Share this post Link to post