Sunday, 24 March 2024
  4 Replies
  681 Visits
  Subscribe
Hi,

I am evaluating if sgcIndy would solve our problem of being stuck with TLS 1.2 and OpenSSL 1.0 library. It looks promising and seems like made to solve exactly that problem. However, If I run the TCPClient/TCPServer Demos and select OpenSSL 3.0 and TLS 1.3 I can see in Wireshark that TLS1.0 is being used.

I've tried to recreate my own demo with forced values to OpenSSL API 3.0 and TLS 1.3 by changing the TIdServerIOHandlerSSLOpenSSL as well as setting the global variable OPENSSL_API_VERSION := opSSL_3_0;

I also removed all other *.dll files except for libssl-3.dll and libcrypto-3.dll from the bin folder.

As a result upon starting the application I get an Assertion failure error pointing to IdSSLOpenSSL.pas, line 3087.

Assertion_failure.png

Any change I am doing something wrong?
Attachments (1)
7 months ago
·
#1965
Hello,

The latest sgcIndy version has an error while selecting the openSSL API, the next release will fix this issue, it will be available soon, so I'll get back to you when it's released.
If you can provide the sample and which delphi version are you using I'll test here the Assertion failure.

Kind Regards,
Sergio
7 months ago
·
#1966
Thank you Sergio for quick response!

I am using Delphi 11.

When I wanted to make an example project based on your TCP Server/Client example, it turns out that it suddenly worked. Then I analyzed what I did differently in my app and noticed one difference:

IdServerIOHandlerSSLOpenSSL1.Init; // Assertion failed error shows up if this code is used
IdTCPServer1.Active := True;


I guess setting this global variable does the magic of initalization already.

OPENSSL_API_VERSION := opSSL_3_0;


Attached is the updated demo TCP project to force using OpenSSL 3.0 and TLS 1.3 with the appropriate binaries needed.

There is a slight access violation when I want to close the client. Not sure if you can replicate it.

Best,
+adnan
Attachments (1)
7 months ago
·
#1967
Hello,

The Assertion failure is because the call to the init method, this is not needed.
The exception is raised in a callback function of the indy library. The next version will fix this issue.
Thanks for the feedback.

Kind Regards,
Sergio
7 months ago
·
#1971
Hi,

You can download the latest version of sgcIndy for Delphi 11 from:

https://www.esegece.com/download/samples/sgcIndy_2024_3_D11.zip

Kind Regards,
Sergio
  • Page :
  • 1
There are no replies made for this post yet.
Submit Your Response
Upload files or images for this discussion by clicking on the upload button below.
Supported: gif,jpg,png,jpeg,zip,rar,pdf
· Insert · Remove
  Upload Files (Maximum 10MB)