#1096635 firewalk: ftbfs with GCC-15

#1096635#5
Date:
2025-02-17 17:13:27 UTC
From:
To:
[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/firewalk_5.0-5_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
init.c:62:27: error: passing argument 2 of ‘catch_sig’ from incompatible pointer type [-Wincompatible-pointer-types]
   62 |     if (catch_sig(SIGINT, catch_sigint) == -1)
      |                           ^~~~~~~~~~~~
      |                           |
      |                           void (*)(int)
In file included from init.c:38:
../include/firewalk.h:256:5: note: expected ‘void (*)(void)’ but argument is of type ‘void (*)(int)’
  256 |     void (*)()                      /* new signal handler */
      |     ^~~~~~~~~~
../include/firewalk.h:261:1: note: ‘catch_sigint’ declared here
  261 | catch_sigint(
      | ^~~~~~~~~~~~
init.c: In function ‘fw_init_net’:
init.c:92:23: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
   92 |         (*fp)->device = libnet_getdevice((*fp)->l);
      |                       ^
make[2]: *** [Makefile:392: init.o] Error 1
make[2]: *** Waiting for unfinished jobs....
packet_filter.c: In function ‘fw_set_pcap_filter’:
packet_filter.c:50:68: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 238 [-Wformat-truncation=]
   50 |         snprintf((*fp)->errbuf, FW_ERRBUF_SIZE, "pcap_lookupnet(): %s",
      |                                                                    ^~
   51 |                     errbuf);
      |                     ~~~~~~
In file included from /usr/include/stdio.h:970,
                 from /usr/include/pcap/pcap.h:136,
                 from /usr/include/pcap.h:43,
                 from ../include/firewalk.h:45,
                 from packet_filter.c:38:
In function ‘snprintf’,
    inlined from ‘fw_set_pcap_filter’ at packet_filter.c:50:9:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:68:10: note: ‘__builtin___snprintf_chk’ output between 19 and 274 bytes into a destination of size 256
   68 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   69 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   70 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
main.c: In function ‘main’:
main.c:78:27: warning: pointer targets in passing argument 1 of ‘usage’ differ in signedness [-Wpointer-sign]
   78 |                 usage(argv[0]);
      |                       ~~~~^~~
      |                           |
      |                           char *
In file included from main.c:38:
../include/firewalk.h:288:5: note: expected ‘u_char *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
  288 |     u_char *                        /* argv[0] */
      |     ^~~~~~~~
main.c:125:27: warning: pointer targets in passing argument 1 of ‘usage’ differ in signedness [-Wpointer-sign]
  125 |                 usage(argv[0]);
      |                       ~~~~^~~
      |                           |
      |                           char *
../include/firewalk.h:288:5: note: expected ‘u_char *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
  288 |     u_char *                        /* argv[0] */
      |     ^~~~~~~~
main.c:136:19: warning: pointer targets in passing argument 1 of ‘usage’ differ in signedness [-Wpointer-sign]
  136 |         usage(argv[0]);
      |               ~~~~^~~
      |                   |
      |                   char *
../include/firewalk.h:288:5: note: expected ‘u_char *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
  288 |     u_char *                        /* argv[0] */
      |     ^~~~~~~~
make[2]: Leaving directory '/build/reproducible-path/firewalk-5.0/src'
make[1]: *** [Makefile:391: all-recursive] Error 1
make[1]: Leaving directory '/build/reproducible-path/firewalk-5.0'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1096635#10
Date:
2025-08-28 04:05:29 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
firewalk, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1096635@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
David da Silva Polverari <polverari@debian.org> (supplier of updated firewalk package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Thu, 28 Aug 2025 03:31:03 +0000
Source: firewalk
Architecture: source
Version: 5.0-6
Distribution: unstable
Urgency: medium
Maintainer: Debian Security Tools <team+pkg-security@tracker.debian.org>
Changed-By: David da Silva Polverari <polverari@debian.org>
Closes: 1096635
Changes:
 firewalk (5.0-6) unstable; urgency=medium
 .
   * debian/control:
       - Bumped Standards-Version to 4.7.2.
       - Updated email address on 'Uploaders' field.
   * debian/copyright: updated packaging copyright information.
   * debian/patches/060_fix-ftbfs-gcc-15.patch: created to fix FTBFS with GCC-15.
     (Closes: #1096635)
Checksums-Sha1:
 3be70e9f9a0e427990c26c4a5c6d0a88bf66f1ac 1994 firewalk_5.0-6.dsc
 4004ed1405ecf18be2f7d531ea624a24f52c2824 5648 firewalk_5.0-6.debian.tar.xz
 56ed03694b5e2cb1fa0f2330f1a5f36c22f7d989 5979 firewalk_5.0-6_source.buildinfo
Checksums-Sha256:
 5368034afd3e1b419c975965ed92b65e5ec6ec48806f8d1df179e8498e325225 1994 firewalk_5.0-6.dsc
 21db1256de27cd3ca252c08501af8486e04c338022ad36eeba60ee197a27d541 5648 firewalk_5.0-6.debian.tar.xz
 3a2a81f8cb509e87b31dd9a1bd70b4f2eaa2acc8c110d9d488464d95e8702179 5979 firewalk_5.0-6_source.buildinfo
Files:
 5a72a6e11b7582bdef46d1829a7e753d 1994 net optional firewalk_5.0-6.dsc
 72284ac50a73f3028559dd53148e37f4 5648 net optional firewalk_5.0-6.debian.tar.xz
 f15db35224e027c74a7095e943bf4eed 5979 net optional firewalk_5.0-6_source.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEDTUunGhzKyZWj9leHIjoaIRpgN4FAmivztAACgkQHIjoaIRp
gN6slhAAhSRqpg/wvjLfzC3tPGPr/CZzvXPUDa6mqTBmW8k2HVvlo47wH9qNrQNe
AXRVKEIc0RKZvzBpzH0nXULMpem2iqcAhtJJqq5TQWX/lur+2hxCiSd68rI7xL0h
cvIRl9TJ/lT7GVuWmUCD3avcqNHOycZZ0D1P5aATNcx0VojkDSX2po1FKpynPTee
SUivVcTgU0FsaK3goF0ZfaRGZkqWWwAw9uNaHGrMH1GtsNBzdpRN+OO0SGMB0CX+
tz69pdRSdWdA13FBNOQEAGpvo+TEUYzCzTSR+eMtalKJudPubACPCBRAcPJ681B2
ps63QF/WWPpoazU+4W/axwByh8Qykz1WtTpWX87+U9cCjKN9IA+ojtASQa+pjFLQ
Q3p6l0Ae+SjNiel3dN4tWZ0PDLQhTPuRGESlnYsDnGVQH43ThvKn+266M/DTFVST
RLDQzWHJ8n3dmybB3PaEpTbGAdzQ/Jrh0RwSHLo1k1mVCcXUy/5oPtT2DXmWZrhd
rgPku9yP5Jt9A6S8W5YkGllwN2FdbOUPuVvGGNathN7v7lk+wCYJGG4BlHep4nX2
TqW6xMk5FLYiRfndu5vUkgEpr9MJSOeYbLny9ySGScGGi9GQe6ixfIhzSHmwF2cW
CkFQZALhPYco1Db1gQLmWwI6KjKNc1VRxlfe48lTvmJqiR+wpes=
=wXJf
-----END PGP SIGNATURE-----