Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
TIdHTTPServer with SChannel?
#4
(01-15-2024, 07:59 PM)cpstevenc Wrote: I have to use an ODBC driver where the company the writes it... still uses OpenSSL from 2005.

In other words, likely OpenSSL 0.9.8.

Can't you get a newer ODBC driver?  If not from this company, then from another company?

(01-15-2024, 07:59 PM)cpstevenc Wrote: When any program I have that uses Indy does any SSL work, OpenSSL DLL files are loaded up into memory. So new OpenSSL files.

In theory, Indy can use OpenSSL 0.9.8, although that hasn't been tested in many many years, so I don't know if it will still work.

(01-15-2024, 07:59 PM)cpstevenc Wrote: Well when that ODBC Driver loads, it appears to hook into the already loaded OpenSSL DLL files in memory.

Then the ODBC starts to fail left and right because "wrong" OpenSSL is running. Stack traces of memory dumps always lead back to this.

I am not sure if there is a way to prevent that or not.

2 things that immediately come to mind: side-by-side assemblies, and activation contexts.  These were designed for this kind of situation, where some components in an app may need one version of a DLL, while other components may need a different version of the DLL.

So, for instance, you could put the 2 OpenSSL versions into separate assemblies, and then use a manifest to tell Windows which assembly to use when loading the DLL.  This might require you to separate the ODBC and Indy codes into separate apps, I'm not sure.

Or, before loading up either library in the same app, you could first create an activation context that uses the old OpenSSL DLLs and then load up the ODBC driver under that context, and then create a new activation context that uses the newer OpenSSL DLLs and then load up Indy under that context.

Just food for thought.  I don't have any practical hands-on experience using either approach.  I just know they exist.

Reply


Messages In This Thread
TIdHTTPServer with SChannel? - by cpstevenc - 01-13-2024, 06:41 AM
RE: TIdHTTPServer with SChannel? - by rlebeau - 01-14-2024, 02:54 AM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-15-2024, 07:59 PM
RE: TIdHTTPServer with SChannel? - by rlebeau - 01-15-2024, 08:23 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-15-2024, 09:55 PM
RE: TIdHTTPServer with SChannel? - by rlebeau - 01-16-2024, 05:32 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-16-2024, 09:16 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-17-2024, 03:58 AM
RE: TIdHTTPServer with SChannel? - by rlebeau - 01-17-2024, 06:24 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-22-2024, 07:25 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-23-2024, 03:33 AM
RE: TIdHTTPServer with SChannel? - by rlebeau - 01-23-2024, 04:51 PM
RE: TIdHTTPServer with SChannel? - by cpstevenc - 01-23-2024, 07:35 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)