• Bug#1066536: sniffit: FTBFS: sn_generation.c:66:1: error: implicit decl

    From Lucas Nussbaum@21:1/5 to All on Wed Mar 13 13:40:01 2024
    Source: sniffit
    Version: 0.5-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 -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_LIBNCURSES=1 -DHAVE_SHMGET=1 -DHAVE_ATEXIT=1 -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 -DSIZEOF_UNSIGNED_SHORT_INT=2 -DSIZEOF_UNSIGNED_LONG_INT=8 -DSIZEOF_UNSIGNED_INT=4 -DUSE_32_INT=1 -DLINUX=
    1 -Wdate-time -D_FORTIFY_SOURCE=2 -lncurses -lpcap -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o sniffit.o
    sniffit.c
    sn_generation.c: In function ‘exec_generate’:
    sn_generation.c:66:1: error: implicit declaration of function ‘input_field’ [-Werror=implicit-function-declaration]
    66 | input_field(msg,NULL,0);
    | ^~~~~~~~~~~
    sn_generation.c:67:1: error: implicit declaration of function ‘forced_refresh’ [-Werror=implicit-function-declaration]
    67 | forced_refresh();
    | ^~~~~~~~~~~~~~
    sn_generation.c: In function ‘sp_fix_IP_packet’:
    sn_generation.c:205:22: error: implicit declaration of function ‘in_cksum’ [-Werror=implicit-function-declaration]
    205 | sp_help_ip->checksum=in_cksum((unsigned short *) (sp->buffer),
    | ^~~~~~~~
    sn_packets.c: In function ‘unwrap_packet’:
    sn_packets.c:68:32: warning: passing argument 1 of ‘in_cksum’ from incompatible pointer type [-Wincompatible-pointer-types]
    68 | if(in_cksum((sp+PROTO_HEAD),unwrapped->IP_len) != IPhead.checksum)
    | ~~~^~~~~~~~~~~~
    | |
    | unsigned char *
    sn_packets.c:14:41: note: expected ‘short unsigned int *’ but argument is of type ‘unsigned char *’
    14 | unsigned short in_cksum(unsigned short *addr,int len)
    | ~~~~~~~~~~~~~~~~^~~~
    sn_cfgfile.c: In function ‘clean_string’:
    sn_cfgfile.c:131:14: error: implicit declaration of function ‘isalnum’ [-Werror=implicit-function-declaration]
    131 | if( (isalnum(string[i]))||(string[i]=='.') )
    | ^~~~~~~
    sn_cfgfile.c:17:1: note: include ‘<ctype.h>’ or provide a declaration of ‘isalnum’
    16 | #include "sniffit.h"
    +++ |+#include <ctype.h>
    17 | /* #include "sn_generation.h" */
    sn_cfgfile.c: In function ‘clean_filename’:
    sn_cfgfile.c:155:15: error: implicit declaration of function ‘iscntrl’ [-Werror=implicit-function-declaration]
    155 | if( !(iscntrl(string[i])) && !(isspace(string[i])) )
    | ^~~~~~~
    sn_cfgfile.c:155:15: note: include ‘<ctype.h>’ or provide a declaration of ‘iscntrl’
    sn_cfgfile.c:155:40: error: implicit declaration of function ‘isspace’ [-Werror=implicit-function-declaration]
    155 | if( !(iscntrl(string[i])) && !(isspace(string[i])) )
    | ^~~~~~~
    sn_cfgfile.c:155:40: note: include ‘<ctype.h>’ or provide a declaration of ‘isspace’
    sn_logfile.c: In function ‘open_logfile’:
    sn_logfile.c:96:8: warning: passing argument 1 of ‘fchmod’ makes integer from pointer without a cast [-Wint-conversion]
    96 | fchmod(LogFILE, S_IWUSR|S_IRUSR);
    | ^~~~~~~
    | |
    | FILE *
    In file included from sn_logfile.c:9: /usr/include/x86_64-linux-gnu/sys/stat.h:365:24: note: expected ‘int’ but argument is of type ‘FILE *’
    365 | extern int fchmod (int __fd, __mode_t __mode) __THROW;
    | ~~~~^~~~
    In file included from sn_plugins.h:23,
    from sniffit.c:35:
    dns_plugin.plug: In function ‘PL_DNS_plugin’:
    dns_plugin.plug:87:12: warning: assignment to ‘struct PL_DNS_header *’ from incompatible pointer type ‘struct DNS_header *’ [-Wincompatible-pointer-types]
    87 | dns_dnshead= (struct DNS_header *) (dns_buffer+udp_start+sizeof(struct UDP_header));
    | ^
    sniffit.c: In function ‘strlower’:
    sniffit.c:127:22: error: implicit declaration of function ‘isupper’ [-Werror=implicit-function-declaration]
    127 | *(string + i) = (isupper (*(string + i)) ? tolower (*(string + i)) : *(string + i));
    | ^~~~~~~
    sniffit.c:45:1: note: include ‘<ctype.h>’ or provide a declaration of ‘isupper’
    44 | #include "sniffit.h" /* definition of functions */
    +++ |+#include <ctype.h>
    45 |
    sniffit.c:127:48: error: implicit declaration of function ‘tolower’ [-Werror=implicit-function-declaration]
    127 | *(string + i) = (isupper (*(string + i)) ? tolower (*(string + i)) : *(string + i));
    | ^~~~~~~ sniffit.c:127:48: note: include ‘<ctype.h>’ or provide a declaration of ‘tolower’
    sniffit.c: In function ‘record_buf’:
    sniffit.c:386:11: error: implicit declaration of function ‘isprint’ [-Werror=implicit-function-declaration]
    386 | if (isprint (data[i]))
    | ^~~~~~~
    sniffit.c:386:11: note: include ‘<ctype.h>’ or provide a declaration of ‘isprint’
    sn_cfgfile.c: In function ‘read_cfg_file’:
    sn_cfgfile.c:463:9: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    463 | fgets(lineptr,259,cfgfile);
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~
    sniffit.c: In function ‘packethandler’:
    sniffit.c:1107:43: warning: passing argument 2 of ‘pcap_dump’ from incompatible pointer type [-Wincompatible-pointer-types]
    1107 | pcap_dump((unsigned char *) dev_dump, p_header, sp);
    | ^~~~~~~~
    | |
    | const struct packetheader * In file included from /usr/include/pcap.h:43,
    from sniffit.c:24:
    /usr/include/pcap/pcap.h:743:37: note: expected ‘const struct pcap_pkthdr *’ but argument is of type ‘const struct packetheader *’
    743 | PCAP_API void pcap_dump(u_char *, const struct pcap_pkthdr *, const u_char *);
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~ sniffit.c:1108:12: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1108 | return 1;
    | ^
    sniffit.c:1154:32: warning: format ‘%lX’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘__uint32_t’ {aka ‘unsigned int’} [-Wformat=]
    1154 | printf (" SEQ (hex): %lX ", ntohl (tcphead.seq_nr));
    | ~~^
    | |
    | long unsigned int
    | %X
    sniffit.c:1156:31: warning: format ‘%lX’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘__uint32_t’ {aka ‘unsigned int’} [-Wformat=]
    1156 | printf ("ACK (hex): %lX\n", ntohl (tcphead.ACK_nr));
    | ~~^
    | |
    | long unsigned int
    | %X
    sniffit.c:1189:24: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1189 | return 1;
    | ^
    sniffit.c:1193:24: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1193 | return 1;
    | ^
    sniffit.c:1259:14: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1259 | return 1;
    | ^
    In file included from sniffit.c:1270:
    sn_analyse.c:13:16: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    13 | return 1;
    | ^
    sn_analyse.c:29:10: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    29 | return 1;
    | ^
    sn_analyse.c:43:37: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    43 | if((dummy&FIN)||(dummy&RST)) return 1; /* needed, cauz entry don't exist */
    | ^
    sn_analyse.c:53:51: warning: passing argument 3 of ‘sbuf_update’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
    53 | sbuf_update(dummy_pointer,ntohl(tcphead.seq_nr),data,info.DATA_len);
    | ^~~~ sniffit.c:413:20: note: expected ‘char *’ but argument is of type ‘const unsigned char *’
    413 | char *data, int len)
    | ~~~~~~^~~~
    sn_analyse.c:83:52: warning: passing argument 3 of ‘record_buf’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
    83 | record_buf(dummy_pointer,ntohl(tcphead.seq_nr),data,info.DATA_len,0);
    | ^~~~ sniffit.c:358:19: note: expected ‘char *’ but argument is of type ‘const unsigned char *’
    358 | char *data, int len, int type)
    | ~~~~~~^~~~
    sn_analyse.c:95:54: warning: passing argument 3 of ‘record_buf’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
    95 | record_buf(dummy_pointer,ntohl(tcphead.seq_nr),data,info.DATA_len,0);
    | ^~~~ sniffit.c:358:19: note: expected ‘char *’ but argument is of type ‘const unsigned char *’
    358 | char *data, int len, int type)
    | ~~~~~~^~~~
    sn_analyse.c:117:51: warning: passing argument 3 of ‘sbuf_update’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
    117 | sbuf_update(dummy_pointer,ntohl(tcphead.seq_nr),data,info.DATA_len);
    | ^~~~ sniffit.c:413:20: note: expected ‘char *’ but argument is of type ‘const unsigned char *’
    413 | char *data, int len)
    | ~~~~~~^~~~
    sn_analyse.c:200:8: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    200 | return 1;
    | ^
    sn_analyse.c:201:8: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    201 | return 1; /* DON'T FORGET THEM!!!! */
    | ^
    sn_interface.c: In function ‘mask_status’:
    sn_interface.c:195:3: warning: assignment to ‘unsigned char *’ from incompatible pointer type ‘_32_bit *’ {aka ‘unsigned int *’} [-Wincompatible-pointer-types]
    195 | ad=&(mask->source_ip);
    | ^
    sn_interface.c:201:3: warning: assignment to ‘unsigned char *’ from incompatible pointer type ‘_32_bit *’ {aka ‘unsigned int *’} [-Wincompatible-pointer-types]
    201 | ad=&(mask->destination_ip);
    | ^
    sniffit.c:1339:14: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1339 | return 1;
    | ^
    sniffit.c:1372:14: warning: returning ‘int’ from a function with return type ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} makes pointer from integer without a cast [-Wint-conversion]
    1372 | return 1;
    | ^
    In file included from sniffit.c:1458:
    sn_conn_desc.c: In function ‘check_mask’:
    sn_conn_desc.c:24:12: error: implicit declaration of function ‘isalnum’ [-Werror=implicit-function-declaration]
    24 | if( (isalnum(data[i]) || ispunct(data[i]) || data[i]==' ')&&(j<(*DESC_LEN)-1) )
    | ^~~~~~~
    sn_conn_desc.c:1:1: note: include ‘<ctype.h>’ or provide a declaration of ‘isalnum’
    +++ |+#include <ctype.h>
    1 | /* Connection description detection file */
    sn_conn_desc.c:24:32: error: implicit declaration of function ‘ispunct’ [-Werror=implicit-function-declaration]
    24 | if( (isalnum(data[i]) || ispunct(data[i]) || data[i]==' ')&&(j<(*DESC_LEN)-1) )
    | ^~~~~~~
    sn_conn_desc.c:24:32: note: include ‘<ctype.h>’ or provide a declaration of ‘ispunct’
    sn_conn_desc.c:27:15: error: implicit declaration of function ‘isspace’ [-Werror=implicit-function-declaration]
    27 | {if( (isspace(data[i]) && data[i]!=' ')&&(j<(*DESC_LEN)-1) )
    | ^~~~~~~
    sn_conn_desc.c:27:15: note: include ‘<ctype.h>’ or provide a declaration of ‘isspace’
    sn_interface.c: In function ‘interaction’:
    sn_interface.c:470:25: error: implicit declaration of function ‘isprint’ [-Werror=implicit-function-declaration]
    470 | isprint(*(connection_data+i))?
    | ^~~~~~~
    sn_interface.c:20:1: note: include ‘<ctype.h>’ or provide a declaration of ‘isprint’
    19 | #include "sn_resolv.h"
    +++ |+#include <ctype.h>
    20 |
    sn_interface.c: In function ‘packet_info_handler’:
    sniffit.c: In function ‘main’:
    sn_interface.c:491:63: warning: ' ' flag used with ‘%u’ gnu_printf format [-Wformat=]
    491 | mvwprintw(packets_box.work_window,0,1,"IP packets/sec. : % 12u",(*IP_nr_of_packets)/INFO_TIMER);
    | ^ sn_interface.c:492:63: warning: ' ' flag used with ‘%u’ gnu_printf format [-Wformat=]
    492 | mvwprintw(packets_box.work_window,1,1,"TCP packets/sec. : % 12u",(*TCP_nr_of_packets)/INFO_TIMER);
    | ^ sn_interface.c:493:63: warning: ' ' flag used with ‘%u’ gnu_printf format [-Wformat=]
    493 | mvwprintw(packets_box.work_window,2,1,"ICMP packets/sec.: % 12u",(*ICMP_nr_of_packets)/INFO_TIMER);
    | ^ sniffit.c:1522:20: warning: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
    1522 | signal (SIGINT, my_exit); /* graceful termination in different ways */
    | ^~~~~~~
    | |
    | void (*)(void)
    In file included from sniffit.c:7:
    /usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
    88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
    | ~~~~~~~~~~~~~~~^~~~~~~~~ sn_interface.c:494:63: warning: ' ' flag used with ‘%u’ gnu_printf format [-Wformat=]
    494 | mvwprintw(packets_box.work_window,3,1,"UDP packets/sec. : % 12u",(*UDP_nr_of_packets)/INFO_TIMER);
    | ^ sniffit.c:1523:20: warning: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
    1523 | signal (SIGHUP, my_exit);
    | ^~~~~~~
    | |
    | void (*)(void)
    /usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
    88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
    | ~~~~~~~~~~~~~~~^~~~~~~~~ sniffit.c:1524:20: warning: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
    1524 | signal (SIGTERM, my_exit);
    | ^~~~~~~
    | |
    | void (*)(void)
    /usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
    88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
    | ~~~~~~~~~~~~~~~^~~~~~~~~ sniffit.c:1563:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
    1563 | printf ("Binary build %s %s\n", __DATE__, __TIME__);
    | ^~~~~~~~
    sniffit.c:1563:53: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
    1563 | printf ("Binary build %s %s\n", __DATE__, __TIME__);
    | ^~~~~~~~ sniffit.c:1773:5: warning: ‘pcap_lookupdev’ is deprecated: use 'pcap_findalldevs' and use the first device [-Wdeprecated-declarations]
    1773 | if((dev = pcap_lookupdev (ebuf)) == NULL)
    | ^~
    /usr/include/pcap/pcap.h:395:18: note: declared here
    395 | PCAP_API char *pcap_lookupdev(char *);
    | ^~~~~~~~~~~~~~
    sniffit.c:1800:20: warning: extra tokens at end of #ifdef directive
    1800 | #ifdef PLUGIN0_INIT()
    | ^
    sniffit.c:1804:20: warning: extra tokens at end of #ifdef directive
    1804 | #ifdef PLUGIN1_INIT()
    | ^
    sniffit.c:1808:20: warning: extra tokens at end of #ifdef directive
    1808 | #ifdef PLUGIN2_INIT()
    | ^
    sniffit.c:1812:20: warning: extra tokens at end of #ifdef directive
    1812 | #ifdef PLUGIN3_INIT()
    | ^
    sniffit.c:1816:20: warning: extra tokens at end of #ifdef directive
    1816 | #ifdef PLUGIN4_INIT()
    | ^
    sniffit.c:1820:20: warning: extra tokens at end of #ifdef directive
    1820 | #ifdef PLUGIN5_INIT()
    | ^
    sniffit.c:1824:20: warning: extra tokens at end of #ifdef directive
    1824 | #ifdef PLUGIN6_INIT()
    | ^
    sniffit.c:1828:20: warning: extra tokens at end of #ifdef directive
    1828 | #ifdef PLUGIN7_INIT()
    | ^
    sniffit.c:1832:20: warning: extra tokens at end of #ifdef directive
    1832 | #ifdef PLUGIN8_INIT()
    | ^
    sniffit.c:1836:20: warning: extra tokens at end of #ifdef directive
    1836 | #ifdef PLUGIN9_INIT()
    | ^
    sniffit.c:1864:24: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=]
    1864 | printf ("Shared %d\n", memsize);
    | ~^ ~~~~~~~
    | | |
    | int long unsigned int
    | %ld
    sniffit.c:1867:18: warning: assignment to ‘int *’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
    1867 | DATAlength = timing + sizeof (int);
    | ^
    sniffit.c:1868:23: warning: assignment to ‘char *’ from incompatible pointer type ‘int *’ [-Wincompatible-pointer-types]
    1868 | connection_data = DATAlength + sizeof (int);
    | ^
    sniffit.c:1869:18: warning: assignment to ‘int *’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
    1869 | LISTlength = connection_data + LENGTH_OF_INTERPROC_DATA;
    | ^
    sniffit.c:1870:12: warning: assignment to ‘struct snif_mask *’ from incompatible pointer type ‘int *’ [-Wincompatible-pointer-types]
    1870 | mask = LISTlength + sizeof (int);
    | ^
    sniffit.c:1871:26: warning: assignment to ‘char *’ from incompatible pointer type ‘struct snif_mask *’ [-Wincompatible-pointer-types]
    1871 | logged_connections = mask + sizeof (struct snif_mask);
    | ^
    sniffit.c:1874:25: warning: assignment to ‘unsigned int *’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
    1874 | TCP_nr_of_packets = running_connections + (sizeof (struct shared_conn_data) * CONNECTION_CAPACITY);
    | ^
    sniffit.c:1875:28: warning: assignment to ‘long unsigned int *’ from incompatible pointer type ‘unsigned int *’ [-Wincompatible-pointer-types]
    1875 | TCP_bytes_in_packets = TCP_nr_of_packets + sizeof (int);
    | ^
    sniffit.c:1876:26: warning: assignment to ‘unsigned int *’ from incompatible pointer type ‘long unsigned int *’ [-Wincompatible-pointer-types]
    1876 | ICMP_nr_of_packets = TCP_bytes_in_packets + sizeof (unsigned long);
    | ^
    sniffit.c:1878:28: warning: assignment to ‘long unsigned int *’ from incompatible pointer type ‘unsigned int *’ [-Wincompatible-pointer-types]
    1878 | UDP_bytes_in_packets = UDP_nr_of_packets + sizeof (int);
    | ^
    sniffit.c:1879:24: warning: assignment to ‘unsigned int *’ from incompatible pointer type ‘long unsigned int *’ [-Wincompatible-pointer-types]
    1879 | IP_nr_of_packets = UDP_bytes_in_packets + sizeof (unsigned long);
    | ^
    sniffit.c:1894:32: warning: passing argument 3 of ‘pcap_loop’ from incompatible pointer type [-Wincompatible-pointer-types]
    1894 | interactive_packethandler, NULL) < 0)
    | ^~~~~~~~~~~~~~~~~~~~~~~~~
    | |
    | void (* (*)(char *, const struct packetheader *, const unsigned char *))(u_char *, const struct pcap_pkthdr *, const u_char *) {aka void (* (*)(char *, const struct packetheader *, const unsigned char *))(unsigned
    char *, const struct pcap_pkthdr *, const unsigned char *)}
    /usr/include/pcap/pcap.h:565:42: note: expected ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} but argument is of type ‘void (* (*)(char *, const struct packetheader *, const unsigned char *
    ))(u_char *, const struct pcap_pkthdr *, const u_char *)’ {aka ‘void (* (*)(char *, const struct packetheader *, const unsigned char *))(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’}
    565 | PCAP_API int pcap_loop(pcap_t *, int, pcap_handler, u_char *);
    | ^~~~~~~~~~~~ sniffit.c:1927:41: warning: passing argument 3 of ‘pcap_loop’ from incompatible pointer type [-Wincompatible-pointer-types]
    1927 | switch (pcap_loop (dev_desc, CNT, packethandler, (unsigned char *) &ipaddr))
    | ^~~~~~~~~~~~~
    | |
    | void (* (*)(unsigned char *, const struct packetheader *, const unsigned char *))(u_char *, const struct pcap_pkthdr *, const u_char *) {aka void (* (*)(unsigned char *, const struct packetheader *, const
    unsigned char *))(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)}
    /usr/include/pcap/pcap.h:565:42: note: expected ‘pcap_handler’ {aka ‘void (*)(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’} but argument is of type ‘void (* (*)(unsigned char *, const struct packetheader *, const
    unsigned char *))(u_char *, const struct pcap_pkthdr *, const u_char *)’ {aka ‘void (* (*)(unsigned char *, const struct packetheader *, const unsigned char *))(unsigned char *, const struct pcap_pkthdr *, const unsigned char *)’}
    565 | PCAP_API int pcap_loop(pcap_t *, int, pcap_handler, u_char *);
    | ^~~~~~~~~~~~
    cc1: some warnings being treated as errors
    make[3]: *** [Makefile:380: sn_generation.o] Error 1


    The full build log is available from: http://qa-logs.debian.net/2024/03/13/sniffit_0.5-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)
  • From Debian Bug Tracking System@21:1/5 to All on Wed Apr 24 04:40:01 2024
    This is a multi-part message in MIME format...

    Your message dated Wed, 24 Apr 2024 02:36:12 +0000
    with message-id <E1rzSUW-00CgZ6-Dn@fasolo.debian.org>
    and subject line Bug#1066536: fixed in sniffit 0.6-1
    has caused the Debian Bug report #1066536,
    regarding sniffit: FTBFS: sn_generation.c:66:1: error: implicit declaration of function ‘input_field’ [-Werror=implicit-function-declaration]
    to be marked as done.

    This means that you claim that the problem has been dealt with.
    If this is not the case it is now your responsibility to reopen the
    Bug report if necessary, and/or fix the problem forthwith.

    (NB: If you are a system administrator and have no idea what this
    message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org
    immediately.)


    --
    1066536: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1066536
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    Received: (at submit) by bugs.debian.org; 13 Mar 2024 12:35:01 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-106.1 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
    DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FOURLA,
    FROMDEVELOPER,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,
    UNPARSEABLE_RELAY,USER_IN_DKIM_WELCOMELIST,USER_IN_DKIM_WHITELIST
    autolearn=ham autolearn_force=no
    version=3.4.6-bugs.debian.org_2005_01_02
    X-Spam-Bayes: score:0.0000 Tokens: new, 206; hammy, 150; neutral, 438; spammy,
    0. spammytokens:
    hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
    0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
    0.000-+--H*RT:108, 0.000-+--H*RT:311
    Return-path: <lucas@debian.org>
    Received: from stravinsky.debian.org ([2