> 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