From: Francesco Chemolli <5175948+kinkie@users.noreply.github.com> Date: Sat, 31 May 2025 18:40:35 +0000 (+0000) Subject: Disable EUI when arpreq is missing and cannot be defined (#2070) X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a0db18c71bffb44182d112204a90039333fa95b7;p=thirdparty%2Fsquid.git Disable EUI when arpreq is missing and cannot be defined (#2070) OpenBSD 7.7 provides a net/if_arp.h header file, but it doesn't provide a `struct arpreq`, which is necessary for our EUI implementation to work. Disable EUI when arpreq definition is missing, except on Windows where we provide our own. --- diff --git a/configure.ac b/configure.ac index 21af96da5c..ba7666ecb4 100644 --- a/configure.ac +++ b/configure.ac @@ -986,6 +986,21 @@ include [], [], [[ #if HAVE_SYS_PARAM_H #include +#endif + ]]) + AC_CHECK_MEMBER([struct arpreq.arp_pa],[],[ + AS_IF([test "x$squid_host_os" != "xmingw" -a "x$squid_host_os" != "xcygwin"],[ + AC_MSG_NOTICE([OS support for EUI seems incomplete, disabling it]) + enable_eui=no + ])],[[ +#if HAVE_SYS_TYPES_H +#include +#endif +#if HAVE_SYS_SOCKET_H +#include +#endif +#if HAVE_NET_IF_ARP_H +#include #endif ]]) SQUID_STATE_ROLLBACK(LIBEUI)