From bfde64aa0d59dc21cd65ef4cffad9ede820e614c Mon Sep 17 00:00:00 2001 From: he Date: Sat, 21 Sep 2024 16:09:29 +0000 Subject: [PATCH] Update nsd to version 4.10.1. Pkgsrc changes: * Add a patch so that this builds again on NetBSD, upstream had borrowed some of our code but not ensured that it still built for us... Upstream changes: NSD 4.10.1 This release consists primarily of bug fixes. @bilias implemented mutual TLS authentication for zone transfers. Please consult the nsd.conf manual for details on the newly introduced configuration options tls-auth-port and tls-auth-xfr-only. @orlitzky provided integration for the OpenRC init system. Version 4.10.0 was the first release to integrate simdzone. Build issues on OpenBSD releases before 5.6, Gentoo and Solaris have been reported and fixed. The fallback parser, used on systems that lack SSE4.2 and AVX2 instruction sets, contained some bugs with regards to state keeping and under certain circumstances a use after free bug was encountered in buffer management. FEATURES: * Merge #352 from orlitzky: contrib: add OpenRC service script, config file, and tmpfiles entry. * Merge #337 from bilias: Mutual TLS-AUTH. BUG FIXES: * Fix incorrect punctuation of log messages. * Fix for #317, document more text on pidfile permissions. * Fix #334: RFC8482 behavior documentation. * Fix for OpenSSL 3.0 deprecated functions. * Merge #341: Fix allow-query wording in nsd.conf.5.in. * Fix test script from making spurious output. * Fix cpu_affinity and socket_partitioning tests for --enable-log-role. * Fix #344: Update simdzone. * Fix #347: Adjust verbosity for TLS (+TCP) to be 5. * Merge #348: Move TLS logging to verbosity level 5. * For #347: Also adjust verbosity of log message for remaining TCP connections. * Merge #349: log file name before loading. * Use MAKE variable rather than make command directly in Makefile. * Serialize WKS RRs using numeric values rather than names. * Fix propagation of Makefile targets to simdzone. * Do not log ACL mismatch on followed CNAMEs. * Fix link of xfr-inspect for libssl dependency. * Initialize tls_auth_port and tls_auth_xfr_only options. * Merge #358: Fix Hurd build error due to log_err. * Update simdzone to fix detection of AVX2 support. simdzone 0.1.1 FEATURES: * Test to verify configure.ac and Makefile.in are correct. * Add support for reading from stdin if filename is "-". * Add support for building with Oracle Developer Studio 12.6. * Add support for "time" service for Well-Know Services (WKS) RR. BUG FIXES: * Fix makefile dependencies. * Fix makefile to use source directory for build dependencies. * Fix changelog to reflect v0.1.0 release. * Update makefile to not use target-specific variables. * Fix makefile clean targets. * Fix state keeping in fallback scanner for contiguous and quoted. * Fix bug in name scanner. * Fix type mnemonic parsing in fallback parser. * Fix endian.h to include machine/endian.h on OpenBSD releases before 5.6. * Fix use after free on buffer resize. * Fix parsing of numeric protocols in WKS RRs. * Make devclean target depend on realclean target. * Fix detection of AVX2 support by checking generic AVX support by the processor and operating system (#222). CHANGES: * Make relative includes relative to current working directory. * Split Autoconf and CMake compiler tests for supported SIMD instructions. --- net/nsd/Makefile | 4 +-- net/nsd/distinfo | 9 ++--- .../patch-simdzone_src_generic_endian.h | 35 +++++++++++++++++++ 3 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 net/nsd/patches/patch-simdzone_src_generic_endian.h diff --git a/net/nsd/Makefile b/net/nsd/Makefile index 00cebd844184..5ce499da5003 100644 --- a/net/nsd/Makefile +++ b/net/nsd/Makefile @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.126 2024/07/29 20:25:53 ryoon Exp $ +# $NetBSD: Makefile,v 1.127 2024/09/21 16:09:29 he Exp $ -DISTNAME= nsd-4.10.0 +DISTNAME= nsd-4.10.1 CATEGORIES= net MASTER_SITES= http://www.nlnetlabs.nl/downloads/nsd/ diff --git a/net/nsd/distinfo b/net/nsd/distinfo index ecdf974de1de..2bd66ff26f13 100644 --- a/net/nsd/distinfo +++ b/net/nsd/distinfo @@ -1,6 +1,7 @@ -$NetBSD: distinfo,v 1.85 2024/07/29 20:25:53 ryoon Exp $ +$NetBSD: distinfo,v 1.86 2024/09/21 16:09:29 he Exp $ -BLAKE2s (nsd-4.10.0.tar.gz) = e22ec8bb8a9262e9c217ab9d81222eb98d3062322c716a7323742754dcf2ce2c -SHA512 (nsd-4.10.0.tar.gz) = ebf65d9a3d56ba560b587dc3cf91b0b086c9267c67f4c6a6c415cc062a08a9d0deb50cc44189b741d5b7634fe07038f6a234999f5a0ee7df6609fc026127fb09 -Size (nsd-4.10.0.tar.gz) = 1388963 bytes +BLAKE2s (nsd-4.10.1.tar.gz) = e736a4afd563714e706fcb716c34750479c7abd5b6966370f0e807a274a4f50b +SHA512 (nsd-4.10.1.tar.gz) = b0f4bdca8a1c6fbbe99096abc8c5f8b34ef2e66dc0da44da253ab164b35ad0aaef5d05eb682b88cc68d8b1671f7b80abafee242a784ed6deb785adee7f6a53a9 +Size (nsd-4.10.1.tar.gz) = 1404799 bytes SHA1 (patch-aa) = d9a423d5faa8da9a213b21fd2712225ac9645091 +SHA1 (patch-simdzone_src_generic_endian.h) = 8eef6b7d9d878101dda1507a4804241b8258a971 diff --git a/net/nsd/patches/patch-simdzone_src_generic_endian.h b/net/nsd/patches/patch-simdzone_src_generic_endian.h new file mode 100644 index 000000000000..0b1308838016 --- /dev/null +++ b/net/nsd/patches/patch-simdzone_src_generic_endian.h @@ -0,0 +1,35 @@ +$NetBSD: patch-simdzone_src_generic_endian.h,v 1.1 2024/09/21 16:09:29 he Exp $ + +WHen borrowing code from NetBSD, make it build +*on* NetBSD, and don't cause redefinition issues... + +--- simdzone/src/generic/endian.h.orig 2024-09-21 15:58:37.017604378 +0000 ++++ simdzone/src/generic/endian.h +@@ -87,6 +87,11 @@ + #elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__) + #include + #endif ++#if defined(__NetBSD__) ++/* Bring bswap{16,32,64} into scope: */ ++#include ++#include ++#endif + + #if !defined(LITTLE_ENDIAN) + # if defined(__ORDER_LITTLE_ENDIAN__) +@@ -122,6 +127,7 @@ + # endif + #endif + ++#if !defined(__NetBSD__) + static really_inline uint16_t bswap16(uint16_t x) + { + // Copied from src/common/lib/libc/gen/bswap16.c in NetBSD +@@ -155,6 +161,7 @@ static really_inline uint64_t bswap64(ui + ( (x >> 40) & 0x000000000000ff00ull ) | + ( (x >> 56) & 0x00000000000000ffull ); + } ++#endif /* ! __NetBSD__ */ + + # if BYTE_ORDER == LITTLE_ENDIAN + # define htobe(bits, x) bswap ## bits((x))