Bug#844752: perl: Configure test stores uninitialized memory in longdblinfbytes
Niko Tyni
ntyni at debian.org
Fri Nov 18 18:00:48 UTC 2016
Package: perl
Version: 5.24.1~rc3-3
Severity: normal
Tags: patch upstream
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org
The Configure test for long double implementation details probes the
contents of "long double inf", and they get stored in the Config module:
% perl -V:longdblinfbytes
longdblinfbytes='0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x7f, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00';
Some of these bytes are currently essentially random and vary between
builds on at least amd64 and i386, because their long doubles are only
80-bit and the remaining six bytes stay uninitialized.
The relevant Configure probe tries to initialize these bytes, but has
several bugs that defeat the purpose. Patch attached.
The randomness seems to only have started to show with GCC-6 for
one reason or another; the bytes are zeroed out on at least GCC-5.
--
Niko Tyni ntyni at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Configure-fix-garbage-filtering-with-80-bit-long-dou.patch
Type: text/x-diff
Size: 1735 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/perl-maintainers/attachments/20161118/26a01672/attachment-0001.patch>
More information about the Perl-maintainers
mailing list