Description of problem:
On upcoming 3.4.2 SpamAssassin idn_dots.t regression test fails only on RH systems.
Rebuilding an updated perl from src is a workaround.
The problem appears on Rhel6, Rhel7 and the corresponding CentOS releases.
Steps to Reproduce:
svn checkout https://svn.apache.org/repos/asf/spamassassin/branches/3.4
prove -v t/idn_dots.t
Regression test fails
Regression test passes
The regression test pass on:
Ubuntu Trusty, Perl 5.18.2-2ubuntu1.6
Ubuntu Xenial, Perl 5.22.1-9ubuntu0.5
MacOS X 10.6.8, Perl 5.26.2 (MacPorts build)
MacOS X 10.6.8, Perl v5.10.0 (Apple build)
MacOS X 10.11.6, Perl 5.26.2 (MacPorts build)
CentOS 7.5.1804, Perl 5.18.4 (Perl.org source, default build config)
CentOS 7.5.1804, Perl 5.28.0 (Perl.org source, default build config)
Fedora Core 27, Perl 5.26.2-406.fc27
OpenBSD 6.3, Perl 5.24.3
Additional info on SpamAssassin bz: https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7591
Could you please extract the failing code and paste/attach it here so that the issue can be reproduced without the SpamAssasin code base? My first impression is that it's an bug fixed in a Perl version later then 5.16.3 that you did not hit on MacOS X because RHEL builds packages with hardening compiler flags that can make some bugs visible.
If you need a help with minimizing the test, please contact Red Hat support.
The regression test is working on "MacOS X 10.6.8, Perl v5.10.0 (Apple build)",
Anyway I will try to find a way to reproduce the problem using less code.
I will also try a src-rpm build without hardening compiler flags to catch the error, thanks for the suggestion.
Test passes on CentOS 7.5 with perl 5.16 built from src.rpm (with all RH patches) but with -D_FORTIFY_SOURCE=0.
This is definitely a Perl bug that has been fixed in later Perl versions.
Red Hat does not plan to fix this issue in Red Hat Enterprise Linux 7. If this issue is critical for your use case please contact Red Hat support service.
We also recommend you trying Red Hat Enterprise Linux 8 that delivers Perl 5.26 and that could contain the missing fix. However, I'm unable to verify it since there was no isolated reproducer provided.