Martin Liddle 1 Posted January 15 I have been updating my software to use Delphi 12 and ICS 9.3. There have been a lot of changes in ICS 9.3 but I have managed to work through and get things working with the exception of SSL. Doubtless I am doing something stupid but I have run out of ideas. I have attached a small test program. It fails when starting with an error message "First chance exception at $7588B4C2. Exception class ESslContextException with message 'Error on reading CA certificate lines'. Process HttpTest.exe (8428)" in procedure TSslContext.LoadCAFromTB. I would be extremely grateful if someone could point out what I am doing wrong. Https Test.zip Share this post Link to post
Angus Robertson 590 Posted January 15 There are a few problems with your code. For V9.3, sslRootCACertsBundle no longer returns a Base64 PEM string, but a smaller PKC12 binary TBytes. And there is a LoadAllFromTB method that checks the format and loads the bundle correctly. V9.1 loaded the default CA bundle automatiucally on startup into a public IcsSslRootCAStore component unless you undefine OpenSSL_AutoLoad_CA_Bundle, or have not updated your OverbyteIcsDefs.inc file. SslContext has a new property UseSharedCAStore that ignores the files and lines properties and uses the preloaded store instead. You are still using TSslHttpCli, replace this with TSslHttpRest and you don;t need an SslContext, it's all handled for you. Angus Share this post Link to post