#63262 closed defect (fixed)
clamav @0.103.3_0 does not support IPv6 on macOS Big Sur, Version 11.4
Reported by: | ballapete (Peter "Pete" Dyballa) | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.7.1 |
Keywords: | bigsur catalina haspatch | Cc: | dluke@…, LenoreHorner |
Port: | clamav |
Description
On PPC Leopard, Mac OS X 10.5.8 I get:
checking for IPv6 support... yes
while on macOS Big Sur, Version 11.4, I get:
checking for IPv6 support... no
configure.log
shows:
6379 configure:24977: checking for IPv6 support 6380 configure:25011: /usr/bin/clang -o conftest -pipe -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch x86_64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -I/opt/local/include -I/opt/local/include -L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-syslib root,/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch x86_64 -L/opt/local/lib conftest.c >&5 6381 conftest.c:139:4: error: implicitly declaring library function 'memset' with type 'void *(void *, int, unsigned long)' [-Werror,-Wimplicit-function-declaration] 6382 memset(&hints, 0, sizeof(hints)); 6383 ^ 6384 conftest.c:139:4: note: include the header <string.h> or explicitly provide a declaration for 'memset' 6385 1 error generated. 6386 configure:25011: $? = 1 6387 configure: program exited with status 1 6388 configure: failed program was: 6389 | /* confdefs.h */ 6390 | #define PACKAGE_NAME "ClamAV" 6391 | #define PACKAGE_TARNAME "clamav" 6392 | #define PACKAGE_VERSION "0.103.3" 6393 | #define PACKAGE_STRING "ClamAV 0.103.3" 6394 | #define PACKAGE_BUGREPORT "https://bugzilla.clamav.net/" 6395 | #define PACKAGE_URL "https://www.clamav.net/" 6396 | #define STDC_HEADERS 1 6397 | #define HAVE_SYS_TYPES_H 1 6398 | #define HAVE_SYS_STAT_H 1 6399 | #define HAVE_STDLIB_H 1 6400 | #define HAVE_STRING_H 1 6401 | #define HAVE_MEMORY_H 1 6402 | #define HAVE_STRINGS_H 1 6403 | #define HAVE_INTTYPES_H 1 6404 | #define HAVE_STDINT_H 1 6405 | #define HAVE_UNISTD_H 1 6406 | #define __EXTENSIONS__ 1 6407 | #define _ALL_SOURCE 1 6408 | #define _GNU_SOURCE 1 6409 | #define _POSIX_PTHREAD_SEMANTICS 1 6410 | #define _TANDEM_SOURCE 1 6411 | #define PACKAGE PACKAGE_NAME 6412 | #define LIBCLAMAV_FULLVER "9.0.5" 6413 | #define LIBCLAMAV_MAJORVER 9 6414 | #define LIBFRESHCLAM_FULLVER "2.0.1" 6415 | #define LIBFRESHCLAM_MAJORVER 2 6416 | #define VERSION "0.103.3" 6417 | #define VERSION_SUFFIX "" 6418 | #define HAVE_DLFCN_H 1 6419 | #define LT_OBJDIR ".libs/" 6420 | #define LT_MODULE_EXT ".so" 6421 | #define LT_SHARED_EXT ".dylib" 6422 | #define LT_MODULE_PATH_VAR "DYLD_LIBRARY_PATH" 6423 | #define LT_DLSEARCH_PATH "/usr/local/lib:/lib:/usr/lib" 6424 | #define HAVE_LIBDL 1 6425 | #define HAVE_DLERROR 1 6426 | #define HAVE_LIBDLLOADER 1 6427 | #define error_t int 6428 | #define __error_t_defined 1 6429 | #define HAVE_PRELOADED_SYMBOLS 1 6430 | #define HAVE_LTDL 1 6431 | #define HAVE_UNISTD_H 1 6432 | #define HAVE_MACH_O_DYLD_H 1 6433 | #define HAVE_DIRENT_H 1 6434 | #define HAVE_CLOSEDIR 1 6435 | #define HAVE_OPENDIR 1 6436 | #define HAVE_READDIR 1 6437 | #define HAVE_STRLCAT 1 6438 | #define HAVE_STRLCPY 1 6439 | #define LT_LIBEXT "a" 6440 | #define LT_LIBPREFIX "lib" 6441 | #define YYTEXT_POINTER 1 6442 | #define HAVE_STDINT_H 1 6443 | #define HAVE_UNISTD_H 1 6444 | #define HAVE_DLFCN_H 1 6445 | #define HAVE_INTTYPES_H 1 6446 | #define HAVE_SYS_TIMES_H 1 6447 | #define HAVE_MEMORY_H 1 6448 | #define HAVE_STDLIB_H 1 6449 | #define HAVE_STRINGS_H 1 6450 | #define HAVE_STRING_H 1 6451 | #define HAVE_SYS_MMAN_H 1 6452 | #define HAVE_SYS_PARAM_H 1 6453 | #define HAVE_SYS_STAT_H 1 6454 | #define HAVE_SYS_TYPES_H 1 6455 | #define HAVE_POLL_H 1 6456 | #define HAVE_LIMITS_H 1 6457 | #define HAVE_SYS_FILIO_H 1 6458 | #define HAVE_SYS_UIO_H 1 6459 | #define HAVE_TERMIOS_H 1 6460 | #define HAVE_STDBOOL_H 1 6461 | #define HAVE_PWD_H 1 6462 | #define HAVE_GRP_H 1 6463 | #define HAVE_SYS_QUEUE_H 1 6464 | #define HAVE_SYS_CDEFS_H 1 6465 | #define USE_SYSLOG 1 6466 | #define HAVE_PTHREAD_H 1 6467 | #define SCANBUFF 131072 6468 | #define FILEBUFF 8192 6469 | #define restrict __restrict 6470 | #define SIZEOF_SHORT 2 6471 | #define SIZEOF_INT 4 6472 | #define SIZEOF_LONG 8 6473 | #define SIZEOF_LONG_LONG 8 6474 | #define SIZEOF_VOID_P 8 6475 | #define HAVE_UNAME_SYSCALL 1 6476 | #define HAVE_POLL 1 6477 | #define HAVE_SETSID 1 6478 | #define HAVE_MEMCPY 1 6479 | #define HAVE_SNPRINTF 1 6480 | #define HAVE_VSNPRINTF 1 6481 | #define HAVE_STRERROR_R 1 6482 | #define HAVE_STRLCPY 1 6483 | #define HAVE_STRLCAT 1 6484 | #define HAVE_STRCASESTR 1 6485 | #define HAVE_INET_NTOP 1 6486 | #define HAVE_SETGROUPS 1 6487 | #define HAVE_INITGROUPS 1 6488 | #define HAVE_CTIME_R 1 6489 | #define HAVE_MKSTEMP 1 6490 | #define HAVE_MADVISE 1 6491 | #define HAVE_GETNAMEINFO 1 6492 | #define HAVE_STRNDUP 1 6493 | #define HAVE_STRNLEN 1 6494 | #define HAVE_STRNSTR 1 6495 | #define HAVE_FSEEKO 1 6496 | #define HAVE_MMAP 1 6497 | #define HAVE_SYSCONF_SC_PAGESIZE 1 6498 | #define HAVE_GETPAGESIZE 1 6499 | #define ANONYMOUS_MAP MAP_ANONYMOUS 6500 | #define HAVE_TIMEGM 1 6501 | #define HAVE_SYSCTLBYNAME 1 6502 | #define USE_MPOOL 1 6503 | #define HAVE_LIBXML2 1 6504 | #define HAVE_LIBSSL 1 6505 | #define HAVE_JSON 1 6506 | #define HAVE_PCRE 1 6507 | #define USING_PCRE2 1 6508 | #define HAVE_ZLIB_H 1 6509 | #define HAVE_LIBZ 1 6510 | #define HAVE_BZLIB_H 1 6511 | #define HAVE_GETADDRINFO 1 6512 | /* end confdefs.h. */ 6513 | 6514 | #include <sys/types.h> 6515 | #include <sys/socket.h> 6516 | #include <netdb.h> 6517 | #include <unistd.h> 6518 | int main(int argc, char **argv) 6519 | { 6520 | struct addrinfo *res, hints; 6521 | int sd; 6522 | 6523 | if((sd = socket(AF_INET6, SOCK_STREAM, 0)) < 0) 6524 | return 1; 6525 | close(sd); 6526 | /* also check if getaddrinfo() handles AF_UNSPEC -- bb#1196 */ 6527 | memset(&hints, 0, sizeof(hints)); 6528 | hints.ai_family = AF_UNSPEC; 6529 | if(getaddrinfo("127.0.0.1", NULL, &hints, &res) < 0) 6530 | return 1; 6531 | freeaddrinfo(res); 6532 | return 0; 6533 | } 6534 | 6535 configure:25023: result: no
which leads to the report:
configure: Summary of detected features follows OS : darwin20.5.0 pthreads : yes () configure: Summary of miscellaneous features check : -L/opt/local/lib -lcheck (auto) fanotify : no (disabled) fdpassing : 1 IPv6 : no openssl : /opt/local libcurl : /opt/local
The man page on macOS Big Surr, Version 11.4, says:
SYNOPSIS #include <string.h> void * memset(void *b, int c, size_t len);
– so obviously a C header file is missing for this test, isn't it?
After patching configure
accordingly I get from configure
run:
checking for systemd system unit installation directory... no checking for IPv6 support... yes checking for resolv.h... yes
and
configure: Summary of miscellaneous features check : -L/opt/local/lib -lcheck (auto) fanotify : no (disabled) fdpassing : 1 IPv6 : yes openssl : /opt/local libcurl : /opt/local
And freshclam -v
from the build
directory seems to work… (although it's only contacting IPv4 addresses)
Attachments (1)
Change History (5)
Changed 3 years ago by ballapete (Peter "Pete" Dyballa)
Attachment: | patch-configure.diff added |
---|
comment:1 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | LenoreHorner added |
---|---|
Keywords: | catalina haspatch added |
Owner: | set to ryandesign |
Status: | new → accepted |
Thanks. This had been filed previously as #63065; since you have a patch here I'll close that one as a duplicate of this one. Since Daniel had not responded to that ticket in weeks, I will consider the 72-hour maintainer timeout period to have expired and I will commit your patch along with a revbump.
comment:2 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
comment:3 Changed 3 years ago by danielluke (Daniel J. Luke)
Thanks for updating the port, I guess the previous ticket got lost in my inbox. Please also push this patch upstream so it gets fixed there. Thanks.
comment:4 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Upstream has completely removed the autoconf-based build system:
https://github.com/Cisco-Talos/clamav/commit/a746d344dff2449b3a70f6e2c6c5225327e1a3c8
so there's nothing for them to do, unless they have replicated this bug in their new CMake-based build system.
For IPv6 support updated version of the original patch-configure.diff file