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