#1071791 bing: FTBFS: bing_probes.c:259:17: error: implicit declaration of function ‘memcpy’

Package:
src:bing
Source:
src:bing
Submitter:
Santiago Vila
Date:
2025-08-11 15:24:07 UTC
Severity:
normal
Tags:
#1071791#5
Date:
2024-05-25 00:32:22 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:
--------------------------------------------------------------------------------
[...]
  debian/rules binary
dh binary --with autoreconf
    dh_update_autotools_config
    dh_autoreconf
    dh_auto_configure
    dh_auto_build
	make -j2 "INSTALL=install --strip-program=true"
make[1]: Entering directory '/<<PKGBUILDDIR>>'
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -I.       -g -Wall -D_DEBUG -o bing.o -c bing.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -I.       -g -Wall -D_DEBUG -o bing_misc.o -c bing_misc.c
bing.c:186:27: warning: missing braces around initializer [-Wmissing-braces]
   186 | struct sockaddr addr_none={PF_INET,0,0};
       |                           ^
       |                                    {  }
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -I.       -g -Wall -D_DEBUG -o bing_probes.o -c bing_probes.c
bing.c: In function ‘main’:
bing.c:1422:5: warning: ignoring return value of ‘setgid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  1422 |     setgid(getgid());
       |     ^~~~~~~~~~~~~~~~
bing.c:1423:5: warning: ignoring return value of ‘setuid’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  1423 |     setuid(getuid());
       |     ^~~~~~~~~~~~~~~~
bing.c: At top level:
bing.c:98:13: warning: ‘rcsid’ defined but not used [-Wunused-variable]
    98 | static char rcsid[] = "$Id: bing.c,v 1.12 1999/10/24 22:45:03 fgouget Exp $";
       |             ^~~~~
bing_probes.c: In function ‘generate_data’:
bing_probes.c:259:17: error: implicit declaration of function ‘memcpy’ [-Werror=implicit-function-declaration]
   259 |                 memcpy(packet_data+i,state->pattern,
       |                 ^~~~~~
bing_probes.c:31:1: note: include ‘<string.h>’ or provide a declaration of ‘memcpy’
    30 | #include "mod_icmp.h"
   +++ |+#include <string.h>
    31 |
bing_probes.c:259:17: warning: incompatible implicit declaration of built-in function ‘memcpy’ [-Wbuiltin-declaration-mismatch]
   259 |                 memcpy(packet_data+i,state->pattern,
       |                 ^~~~~~
bing_probes.c:259:17: note: include ‘<string.h>’ or provide a declaration of ‘memcpy’
bing_probes.c: In function ‘probe_set_option’:
bing_probes.c:370:9: warning: incompatible implicit declaration of built-in function ‘memcpy’ [-Wbuiltin-declaration-mismatch]
   370 |         memcpy(state->pattern,(char*)optval,state->pattern_size);
       |         ^~~~~~
bing_probes.c:370:9: note: include ‘<string.h>’ or provide a declaration of ‘memcpy’
bing_probes.c:381:40: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   381 |         handle2state(handle)->udp_port=(int)optval;
       |                                        ^
bing_probes.c: In function ‘do_probe’:
bing_probes.c:472:17: warning: incompatible implicit declaration of built-in function ‘memcpy’ [-Wbuiltin-declaration-mismatch]
   472 |                 memcpy(&((struct sockaddr_in*)(&probe->dst_addr))->sin_addr,&ip->ip_dst,4);
       |                 ^~~~~~
bing_probes.c:472:17: note: include ‘<string.h>’ or provide a declaration of ‘memcpy’
cc1: some warnings being treated as errors
make[1]: *** [Makefile:112: bing_probes.o] Error 1
make[1]: *** Waiting for unfinished jobs....
bing.c: In function ‘traceroute’:
bing.c:701:16: warning: ‘probe_res’ may be used uninitialized [-Wmaybe-uninitialized]
   701 |             if (probe_res!=BP_RES_TIMEOUT) {
       |                ^
bing.c:605:9: note: ‘probe_res’ was declared here
   605 |     int probe_res;
       |         ^~~~~~~~~
bing.c: In function ‘print_host_statistics’:
bing.c:1205:8: warning: ‘corr’ may be used uninitialized [-Wmaybe-uninitialized]
  1205 |     if (corr==0.0) {
       |        ^
bing.c:1174:12: note: ‘corr’ was declared here
  1174 |     double corr;
       |            ^~~~
bing.c: In function ‘main’:
bing.c:1604:29: warning: ‘c1’ may be used uninitialized [-Wmaybe-uninitialized]
  1604 |                             printf("%c%7.3f%c ",c1,rtt,c2);
       |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bing.c:1580:34: note: ‘c1’ was declared here
  1580 |                             char c1,c2;
       |                                  ^~
bing.c:1604:29: warning: ‘c2’ may be used uninitialized [-Wmaybe-uninitialized]
  1604 |                             printf("%c%7.3f%c ",c1,rtt,c2);
       |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bing.c:1580:37: note: ‘c2’ was declared here
  1580 |                             char c1,c2;
       |                                     ^~
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j2 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202405/

About the archive rebuild: The build was made on virtual machines
of type m6a.large and r6a.large from AWS, using sbuild and a
reduced chroot with only build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Thanks.

#1071791#12
Date:
2025-03-14 12:50:41 UTC
From:
To:
Control: tag -1 patch
thanks

The fix suggested by the compiler (first part) works fine. See attached
patch.

  Emanuele