Re: pgsql: Refactor the sslfiles Makefile target for ease of use - Mailing list pgsql-committers

From Daniel Gustafsson
Subject Re: pgsql: Refactor the sslfiles Makefile target for ease of use
Date
Msg-id 0D295F43-806D-4B3F-AB98-F941A19E0271@yesql.se
Whole thread Raw
In response to pgsql: Refactor the sslfiles Makefile target for ease of use  (Daniel Gustafsson <dgustafsson@postgresql.org>)
Responses Re: pgsql: Refactor the sslfiles Makefile target for ease of use  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-committers
> On 19 Oct 2021, at 20:17, Daniel Gustafsson <dgustafsson@postgresql.org> wrote:
>
> Refactor the sslfiles Makefile target for ease of use

This made prairiedog fall over in the SSL tests [0], with what seems a pretty
straightforward reason: 32- vs 64-bit Perl.

  Integer overflow in hexadecimal number at t/001_ssltests.pl line 493.
  Illegal hexadecimal digit '
  ' ignored at t/001_ssltests.pl line 493.
  Hexadecimal number > 0xffffffff non-portable at t/001_ssltests.pl line 493.

The conversion of the serialnumber from hex to base10 requires a 64-bit capable
Perl, and my guess is that prairiedog has a 32-bit Perl.  I installed 5.8.3 in
64-bit mode and verified that it does work there (using the perlbrew recipe in
3eb1f4d097454 which is fantastic).

Attached diff passes tests for me, but I don't have a 32-bit system handy so I
prefer some more eyes on it before pushing.  The most portable way I could find
to determine 32/64 bit in Perl was to use Config and check ivsize.  It works in
my 5.8.3 installation, but adding Andrew on CC to get a Perl expert opinion on
that.

--
Daniel Gustafsson        https://vmware.com/

[0] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=prairiedog&dt=2021-10-20%2005%3A32%3A46



Attachment

pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: pgsql: Ensure correct lock level is used in ALTER ... RENAME
Next
From: Tom Lane
Date:
Subject: Re: pgsql: Refactor the sslfiles Makefile target for ease of use