Forum > Networking and Web Programming

Debian 10 Indy and SSL, Not load library

(1/4) > >>

BlueIcaro:
Hello, I'm playing with Indy, I installed using Online Package Manager. I donwload the proyect from here:
https://forum.lazarus.freepascal.org/index.php?topic=24565.0
And I add a TIdSSLIOHandlerSocketOpenSSL component. In  the TIdhttp OIHandler property I add the TIdSSLIOHandlerSocketOpenSSL component.

But I can't load any https web. I got a Load Library error.
Debian 10, says that I have load the package using: apt-get install libssl1.1
OnCreate Event I wrote:

--- Code: --- If  IsOpenSSL_1x  then
 begin
   Caption:='v1';
 end
 else
 begin
   Caption := 'No';
 end; 

--- End code ---
And the funtion returns false.
Any idea?

I using Lazarus 2.06, Debian 10/64Bits

Thanks

/BlueIcaro

Bi0T1N:
The problem is that Debian 10 ships with OpenSSL 1.1.1 which isn't supported by Indy yet. If you run openssl version -v you'll see that you have OpenSSL 1.1.1 installed.

To use Indy you need to compile your own OpenSSL 1.0.2 library:

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gztar -xf openssl-1.0.2u.tar.gzcd openssl-1.0.2u./config sharedmakeAfter that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.

Remy Lebeau:

--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---To use Indy you need to compile your own OpenSSL 1.0.2 library

--- End quote ---

Or otherwise obtain pre-compiled binaries for it.  But yes, 1.0.2 is a requirement at this time.


--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---After that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.

--- End quote ---

If the binaries are in the same folder as your app, you should not need to call IdOpenSSLSetLibPath().

BlueIcaro:

--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---
After that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.

--- End quote ---

After follow your instruccions, where Can I find that files ?

I copy from /usr/lib/x86_64-linux-gnu/ but It doesn't work. I thing that file are 1.1 version


/BlueIcaro

Bi0T1N:
I'm sorry, I missed the important keyword shared in my inital post. Use ./config shared instead of ./config.
For copying you can use:

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---cp *.so /path/to/copy/to

Navigation

[0] Message Index

[#] Next page

Go to full version