Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Indy for Lazarus and SSL v3.x
#1
Hi, I use lazarus 4.4/64bit for windows11. My app needs to make HTTPs calls but i faced this problem. If I use the SSL binaries v3.x idHTTP can't recognize them. I adviced to use v1.1 but I can't find them. At the https://github.com/IndySockets/OpenSSL-Binaries are only v1.0 and v3.x.  
My question is: is There a working link from where I could download precompiled binaries that work with indy10 at Lazarus64/win or is there another way to make indy able to make SSL calls?
Thanls in advance
Reply
#2
Indy doesn't natively support OpenSSL 3.x (yet? ever?). But you can use TaurusTLS, which adds support for OpenSSL 3.x to Indy.

Reply
#3
Remy thanks for your reply. I need indy for its clients (mostly TidHTTP) in Lazarus-win/64, but in TaurusTLS link i can't find something about these clients. In a sublink to precompiled libraries i found DLLs ov 1.1version. Are they compatible to Indy10 without installing TaurusTLS?
Reply
#4
(12-08-2025, 10:15 AM)dpapdpap Wrote: I need indy for its clients (mostly TidHTTP) in Lazarus-win/64, but in TaurusTLS link i can't find something about these clients.

TaurusTLS introduces a new set of SSLIOHandler components for Indy. For example, simply replace any use of Indy's stock TIdSSLIOHandlerSocketOpenSSL component in your code with TaurusTLS's TTaurusTLSIOHandlerSocket component instead.

(12-08-2025, 10:15 AM)dpapdpap Wrote: In a sublink to precompiled libraries i found DLLs ov 1.1version.

TaurusTLS's repo provides DLLs for OpenSSL 1.1 and 3.x.

(12-08-2025, 10:15 AM)dpapdpap Wrote: Are they compatible to Indy10 without installing TaurusTLS?

No, for the reason I already stated earlier:

Quote:Indy doesn't natively support OpenSSL 3.x (yet? ever?)

While the DLLs themselves are not dependent on TaurusTLS specifically, you cannot use the DLLs with Indy as-is without using TaurusTLS (or other 3rd party library that is compatible with the DLLs).

Also, OpenSSL 1.1 is outdated, use OpenSSL 3.x instead.

Reply
#5
Remy, I installed TaurusTLS and I made a test app with just two components: an TidHTTP1 and a TTaurusTLSIOHandlerSocket. I set HTTP1.IOhandler:=  TaurusTLSIOHandlerSocket1, I download DLLs v3.6/64bit puting them in app's dir and I tried a HTTP1.POST but i receive the error couldnotloadSSLlibrary. What i missed?
PS. Lazarus, Windows, app all are 64 bit
PS2. The same error raises when I'm trying to run the Demo "TaurusHTTPserver". It compiles ok but executing "LHTTP := THTTPServer.Create" raises the error
Reply
#6
(12-08-2025, 06:03 PM)dpapdpap Wrote: Remy, I installed TaurusTLS and I made a test app with just two components: an TidHTTP1 and a TTaurusTLSIOHandlerSocket. I set HTTP1.IOhandler:=  TaurusTLSIOHandlerSocket1, I download DLLs v3.6/64bit puting them in app's dir and I tried a HTTP1.POST but i receive the error couldnotloadSSLlibrary. What i missed?

I can't answer that, as I don't work on that project. You need to contact TaurusTLS's devs for support.

Also see: A Reminder - TaurusTLS applications require that you deploy the OpenSSL .DLL's in Windows

Reply
#7
(12-08-2025, 06:03 PM)dpapdpap Wrote: Remy, I installed TaurusTLS and I made a test app with just two components: an TidHTTP1 and a TTaurusTLSIOHandlerSocket. I set HTTP1.IOhandler:=  TaurusTLSIOHandlerSocket1, I download DLLs v3.6/64bit puting them in app's dir and I tried a HTTP1.POST but i receive the error couldnotloadSSLlibrary. What i missed?
PS. Lazarus, Windows, app all are 64 bit
PS2. The same error raises when I'm trying to run the Demo "TaurusHTTPserver". It compiles ok but executing "LHTTP := THTTPServer.Create" raises the error

For OpenSSL 3.6 on Win64, you need the following file:

https://github.com/TaurusTLS-Developers/...-win64.zip

That should contain the files:

libcrypto-3-x64.dll
libssl-3-x64.dll

Those files need to be in the same directory as your executable.  Look carefully.  It would probably be in a directory such as lib\x86_64-win64
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)