Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq - Mailing list pgsql-bugs

From Magnus Hagander
Subject Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq
Date
Msg-id 38160391-9D20-4650-9A15-756B21ABEE9B@hagander.net
Whole thread Raw
In response to Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq
List pgsql-bugs
On 22 jun 2009, at 18.05, Tom Lane <tgl@sss.pgh.pa.us> wrote:

> Magnus Hagander <magnus@hagander.net> writes:
>> How about the attached patch? Does it work for you?
>
> The existing references to typedef ENGINE and associated functions are
> wrapped in
>
> #if (SSLEAY_VERSION_NUMBER >=3D 0x00907000L) && !defined=20
> (OPENSSL_NO_ENGINE)
>
> I rather imagine that this patch will cause complete failure in builds
> where that's not true.

Yeah, that will have to be fixed.



>  I'm also a bit concerned about wrapping a struct
> field inside such an #if, as that's likely to cause hard-to-debug
> problems if two compilations read libpq-int.h with different #define
> environments.
>
Since it's a pointer we could just declare it as void, no? Or even #if=20=
=20
between void and "real" pointer. Wouldn't that be safe?

(we already have a similar issue with the whole #ifdef use_ssl, don't=20=20
we? But having one isn't an excuse to create another of course=E2=80=A6)

/Magnus

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq
Next
From: Magnus Hagander
Date:
Subject: Re: BUG #4869: No proper initialization of OpenSSL-Engine in libpq