• Bug#1066719: netstat-nat: FTBFS: netstat-nat.c:530:9: error: implicit d

    From Lucas Nussbaum@21:1/5 to All on Wed Mar 13 15:00:02 2024
    Source: netstat-nat
    Version: 1.4.10-3
    Severity: serious
    Justification: FTBFS
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-20240313 ftbfs-trixie ftbfs-impfuncdef

    Hi,

    During a rebuild of all packages in sid, your package failed to build
    on amd64.

    This is most likely caused by a change in dpkg 1.22.6, that enabled -Werror=implicit-function-declaration. For more information, see https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration

    Relevant part (hopefully):
    gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"netstat-nat\" -DVERSION=\"1.4.10\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_
    STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_NETDB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_ARPA_INET_H=1 -DHAVE_ERRNO_H=1 -DHAVE_STRINGS_H=1 -
    DHAVE_NET_IF_H=1 -DHAVE_SYS_IOCTL_H=1 -I. -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-
    protection -c netstat-nat.c
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:283:42: warning: comparison between pointer and zero character constant [-Wpointer-compare]
    283 | if (optarg == NULL || optarg == '\0') {
    | ^~
    netstat-nat.c:283:35: note: did you mean to dereference the pointer?
    283 | if (optarg == NULL || optarg == '\0') {
    | ^
    netstat-nat.c: In function ‘get_protocol’:
    netstat-nat.c:530:9: error: implicit declaration of function ‘string_search’ [-Werror=implicit-function-declaration]
    530 | if (string_search(line, "tcp")) {
    | ^~~~~~~~~~~~~
    netstat-nat.c: In function ‘process_entry’:
    netstat-nat.c:615:5: error: implicit declaration of function ‘search_first_hit’ [-Werror=implicit-function-declaration]
    615 | search_first_hit("src=", line, srcip_f);
    | ^~~~~~~~~~~~~~~~
    netstat-nat.c:617:5: error: implicit declaration of function ‘search_sec_hit’ [-Werror=implicit-function-declaration]
    617 | search_sec_hit("src=", line, srcip_s);
    | ^~~~~~~~~~~~~~
    netstat-nat.c: In function ‘xcalloc’:
    netstat-nat.c:824:45: warning: format ‘%i’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
    824 | printf("Could not allocate memory (%i bytes); %s.\n -- Exiting.\n", bufsize, strerror(errno));
    | ~^ ~~~~~~~
    | | |
    | int size_t {aka long unsigned int}
    | %li
    netstat-nat.c: In function ‘xrealloc’:
    netstat-nat.c:837:45: warning: format ‘%i’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=]
    837 | printf("Could not allocate memory (%i bytes); %s.\n -- Exiting.\n", newbufsize, strerror(errno));
    | ~^ ~~~~~~~~~~
    | | |
    | int size_t {aka long unsigned int}
    | %li
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:473:52: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    473 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][3]);
    | ^
    In file included from /usr/include/stdio.h:906,
    from netstat-nat.h:28,
    from netstat-nat.c:182:
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:473:10: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:478:42: warning: ‘%-41s’ directive output may be truncated writing between 41 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    478 | snprintf(src , sizeof(src), "%-41s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:478:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 42 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:482:52: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    482 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][4]);
    | ^
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:482:10: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:487:41: warning: ‘%-41s’ directive output may be truncated writing between 41 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    487 | snprintf(dst, sizeof(dst), "%-41s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:487:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 42 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:492:56: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    492 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][7]);
    | ^
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:492:18: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:497:46: warning: ‘%-41s’ directive output may be truncated writing between 41 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    497 | snprintf(host, sizeof(dst), "%-41s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:497:3: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 42 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:443:52: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    443 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][3]);
    | ^
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:443:17: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:448:42: warning: ‘%-31s’ directive output may be truncated writing between 31 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    448 | snprintf(src, sizeof(src), "%-31s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:448:13: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 32 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:452:52: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    452 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][4]);
    | ^
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:452:17: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:457:41: warning: ‘%-31s’ directive output may be truncated writing between 31 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    457 | snprintf(dst, sizeof(dst), "%-31s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:457:6: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 32 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:462:56: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
    462 | snprintf(buf2, sizeof(buf2), "%s:%s", buf, pa[index][7]);
    | ^
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:462:18: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 101) into a destination of size 100
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    netstat-nat.c: In function ‘main’:
    netstat-nat.c:467:46: warning: ‘%-31s’ directive output may be truncated writing between 31 and 99 bytes into a region of size 50 [-Wformat-truncation=]
    467 | snprintf(host, sizeof(dst), "%-31s", buf2);
    | ^~~~~ ~~~~
    In function ‘snprintf’,
    inlined from ‘main’ at netstat-nat.c:467:3: /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output between 32 and 100 bytes into a destination of size 50
    54 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    55 | __glibc_objsize (__s), __fmt,
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    56 | __va_arg_pack ());
    | ~~~~~~~~~~~~~~~~~
    cc1: some warnings being treated as errors
    make[2]: *** [Makefile:261: netstat-nat.o] Error 1


    The full build log is available from: http://qa-logs.debian.net/2024/03/13/netstat-nat_1.4.10-3_unstable.log

    All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lucas@debian.org
    or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

    A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

    If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects

    If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)