Re: Removing --disable-strong-random from the code

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>, Heikki Linnakangas <hlinnaka@iki.fi>
Date: 2018-12-30T14:37:40Z
Lists: pgsql-hackers

Attachments

On Sun, Dec 30, 2018 at 04:15:49PM +0900, Michael Paquier wrote:
> On Sun, Dec 30, 2018 at 01:45:42AM -0500, Tom Lane wrote:
>> Hah, I was just about to work on that myself --- glad I didn't get
>> to it quite yet.  A couple of thoughts:
>> 
>> 1. Surely there's documentation about --disable-strong-random
>> to clean up too?
> 
> Oops,  I forgot to grep on this one.  Removed from my tree.
> 
>> 2. I wonder whether it's worth adding this to port.h:
>> 
>>  extern bool pg_strong_random(void *buf, size_t len);
>> +/* pg_backend_random used to be a wrapper for pg_strong_random */
>> +#define pg_backend_random pg_strong_random
>> 
>> to prevent unnecessary breakage in extensions that might be depending
>> on pg_backend_random.
> 
> Sure, that makes sense.  Added.
> 
>> 3. Didn't look, but the MSVC build code might need a tweak too
>> now that pg_strong_random.o is built-always rather than conditional?
> 
> There is nothing needed here as pg_strong_random.c has always been
> included into @pgportfiles as we assumed that Windows would always
> have a random source.

And attached is an updated patch with all those fixes included.  Any
thoughts or opinions?
--
Michael

Commits

  1. Remove configure switch --disable-strong-random

  2. Fix generation of padding message before encrypting Elgamal in pgcrypto