Using TLS 1.2 instead of 1.1

I’m using Remobjects version
I have made a RO client that consume Soap Web Service made by another company.
It works fine up to now but this company told me that se use TLS 1.0/1.1 to connect to their web service, and that we should use TLS 1.2 instead, because TLS 1.0/1.1 will no longer be supported.
How can I force the RO client (made with Delphi) to use TLS 1.2 ?
Best regards



Indy-based channels support TLS 1.2.
you may select it in correspondent TIdSSLIOHandlerSocketOpenSSL component:

Thanks Evgeny for your reply.
Can you tell me what are the Indy based channels ?
I use TROWinInetHTTPChannel and TROSynapseHTTPChannel.
I guess that you speak about TROIndyHTTPChannel, the strange thing is that it doesn’t appear in my component list. Any idea why ?
Best regards


Check that RemObjects_Indy_D## package is installed on your system.
you can open BuildPackages_D## package group in IDE and install it manually.

My Indy component show different things (I’m under Delphi 2010).



TLS 1.2 was added to Indy in 2012.

you can upgrade Indy from their latest snapshot.
it can be downloaded at

A lot of conflic with other version of Indy but now Indy install is ok.
Do I have to set the other param of the TIdSSLIOHandlerSocketOpenSSL or just the TLS Stuff ?


after installing of the latest snapshot, update and uncomment {.$DEFINE RemObjects_INDY10D}.

so you should have

   { If you are using Indy 10.5.9 or the latest just uncomment the
     RemObjects_INDY10D DEFINE right below, and remove the Indy
     package references from the Requires section of RemObjects_Indy_Dx.dpk
     before re-compiling your RemObjects Indy package. }

  {$DEFINE RemObjects_INDY10D}   ///<<<<<<<<< changed

after updateing this .inc, you need to recompile all packages.
for this open BuildPackages_D14.groupproj and rebuild all packages.

Thanks for the tip.
I have rebuild the package.
but concerning the IdSSLIOHandlerSocketOpenSSL1 that is linked to the ROIndyHTTPChannel I have set the TLS options but what about the other properties, should I set them or the channel properties are used ?

if you need to set SSL options, you should set them in TIdSSLIOHandlerSocketOpenSSL component.
usual (i.e. non SSL) properties like host, port , etc should be set on the TROIndyHTTPChannel level.

Perfect Evgeny, thanks for your help.

1 Like