Bug#1040658: libsendmail-milter-perl: FTBFS with Perl 5.38: stack smashing detected
Niko Tyni
ntyni at debian.org
Sat Jul 8 18:38:42 BST 2023
Source: libsendmail-milter-perl
Version: 0.18-9
Severity: important
Tags: ftbfs trixie sid
User: debian-perl at lists.debian.org
Usertags: perl-5.38-transition
This package fails to build with Perl 5.38 (currently in experimental).
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-Iblib/lib" "-Iblib/arch" test.pl
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7ac000b90].
---> Finished callback from interpreter: [0x7fb7ac000b90].
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7b8000b90].
---> Finished callback from interpreter: [0x7fb7b8000b90].
---> Starting callback from interpreter: [0x7fb7b0000b90].
---> Finished callback from interpreter: [0x7fb7b0000b90].
---> Starting callback from interpreter: [0x7fb7b0000b90].
---> Finished callback from interpreter: [0x7fb7b0000b90].
---> Starting callback from interpreter: [0x7fb7a8000b90].
---> Finished callback from interpreter: [0x7fb7a8000b90].
---> Starting callback from interpreter: [0x7fb7a8000b90].
---> Finished callback from interpreter: [0x7fb7a8000b90].
*** stack smashing detected ***: terminated
Aborted
make[1]: *** [Makefile:1015: test_dynamic] Error 134
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_test: error: make -j4 test TEST_VERBOSE=1 returned exit code 2
make: *** [debian/rules:6: binary-arch] Error 25
While this might be the same issue as #807392 it seems deterministic
enough that I haven't got it to succeed even once with Perl 5.38.
Also, these build warnings:
/usr/lib/x86_64-linux-gnu/perl/5.38/CORE/sv.h:1972:37: note: in expansion of macro ‘SvPV_flags’
1972 | #define SvPV(sv, len) SvPV_flags(sv, len, SV_GMAGIC)
| ^~~~~~~~~~
Milter.xs:445:17: note: in expansion of macro ‘SvPV’
445 | bodyp = SvPV(body_data, len);
| ^~~~
In file included from /usr/lib/x86_64-linux-gnu/perl/5.38/CORE/perl.h:7812:
/usr/lib/x86_64-linux-gnu/perl/5.38/CORE/sv_inline.h:908:33: note: expected ‘STRLEN * const’ {aka ‘long unsigned int * const’} but argument is of type ‘int *’
908 | STRLEN * const lp,
| ~~~~~~~~~~~~~~~^~
hint to a similar problem as https://rt.cpan.org/Public/Bug/Display.html?id=143880
and https://github.com/Perl/perl5/issues/19983 . Quoting Karl Williamson in the
latter:
SvPV (and similar) are documented that 'len' is to be STRLEN. This
module declares it to be int. That was harmless before the blamed commit,
but with it, it results in undefined behavior.
--
Niko Tyni ntyni at debian.org
More information about the pkg-perl-maintainers
mailing list