Tue Jan 2 12:23:55 2018 UTC ()
Update net/powerdns-recursor to 4.1.0.
Lua support no longer optional.

PowerDNS Recursor 4.1.0
===========================================================

- Improved DNSSEC support
- Improved documentation
- Improved RPZ support
- Improved EDNS Client Subnet support
- Support for Botan 2.x (and removal of support for Botan 1.10)
- SNMP support
- Lua engine has gained access to more parts of the recursor
- CPU affinity can now be specified
- TCP Fast Open support
- New performance metrics

Full changelog:

  https://doc.powerdns.com/recursor/changelog/4.1.html

PowerDNS Recursor 4.0.7
===========================================================

- Insufficient validation of DNSSEC signatures (CVE-2017-15090)
- Cross-Site Scripting in the web interface (CVE-2017-15092)
- Configuration file injection in the API (CVE-2017-15093)
- Memory leak in DNSSEC parsing (CVE-2017-15094)

Bug fixes
- Update rec_control manpage
- Check in the detected OpenSSL/libcrypto for ECDSA
- Make more specific Netmasks < to less specific ones
- Fix validation at the exact RRSIG inception or expiration time
- Lowercase all outgoing qnames when lowercase-outgoing is set
- Fix libatomic detection on ppc64
- Edit configname definition to include the 'config-name' argument

Improvements
- Extract nested exception from Luawrapper
- Use explicit yes for default-enabled settings
- Throw an error when lua-conf-file can't be loaded
- get-remote-ring's "other" report should only have two items.
- PowerDNS sdig does not truncate trailing bits of EDNS Client Subnet
  mask
- Only increase no-packet-error on the first read
- Add support for Botan 2.x
- Add more information to recursor cache dumps
- Fix typo in two log messages
- Add help text on autodetecting systemd support
- Be more resilient with broken auths
- Remove pdns.PASS and pdns.TRUNCATE
- Improve dnsbulktest experience in travis for more robustness
- Create socket-dir from init-script
- b.root renumbering, effective 2017-10-24
- Don't retry security polling too often when it fails


(fhajny)
diff -r1.25 -r1.26 pkgsrc/net/powerdns-recursor/Makefile
diff -r1.21 -r1.22 pkgsrc/net/powerdns-recursor/distinfo
diff -r1.4 -r0 pkgsrc/net/powerdns-recursor/options.mk
diff -r1.2 -r1.3 pkgsrc/net/powerdns-recursor/patches/patch-configure
diff -r1.2 -r1.3 pkgsrc/net/powerdns-recursor/patches/patch-m4_pdns__check__os.m4
diff -r1.3 -r1.4 pkgsrc/net/powerdns-recursor/patches/patch-kqueuemplexer.cc
diff -r0 -r1.1 pkgsrc/net/powerdns-recursor/patches/patch-portsmplexer.cc

cvs diff -r1.25 -r1.26 pkgsrc/net/powerdns-recursor/Makefile (expand / switch to unified diff)

--- pkgsrc/net/powerdns-recursor/Makefile 2017/09/03 08:53:13 1.25
+++ pkgsrc/net/powerdns-recursor/Makefile 2018/01/02 12:23:55 1.26
@@ -1,17 +1,17 @@ @@ -1,17 +1,17 @@
1# $NetBSD: Makefile,v 1.25 2017/09/03 08:53:13 wiz Exp $ 1# $NetBSD: Makefile,v 1.26 2018/01/02 12:23:55 fhajny Exp $
2# 2#
3 3
4DISTNAME= pdns-recursor-4.0.6 4DISTNAME= pdns-recursor-4.1.0
5CATEGORIES= net 5CATEGORIES= net
6MASTER_SITES= http://downloads.powerdns.com/releases/ 6MASTER_SITES= http://downloads.powerdns.com/releases/
7EXTRACT_SUFX= .tar.bz2 7EXTRACT_SUFX= .tar.bz2
8 8
9MAINTAINER= pkgsrc-users@NetBSD.org 9MAINTAINER= pkgsrc-users@NetBSD.org
10HOMEPAGE= https://www.powerdns.com/ 10HOMEPAGE= https://www.powerdns.com/
11COMMENT= PowerDNS resolver/recursing nameserver 11COMMENT= PowerDNS resolver/recursing nameserver
12LICENSE= gnu-gpl-v2 12LICENSE= gnu-gpl-v2
13 13
14GNU_CONFIGURE= yes 14GNU_CONFIGURE= yes
15USE_LANGUAGES= c c++11 15USE_LANGUAGES= c c++11
16USE_TOOLS+= gmake pkg-config 16USE_TOOLS+= gmake pkg-config
17 17
@@ -21,19 +21,18 @@ EGDIR= ${PREFIX}/share/examples/pdns-r @@ -21,19 +21,18 @@ EGDIR= ${PREFIX}/share/examples/pdns-r
21 21
22PTHREAD_AUTO_VARS= yes 22PTHREAD_AUTO_VARS= yes
23 23
24INSTALL_MAKE_FLAGS+= sysconfdir=${EGDIR} 24INSTALL_MAKE_FLAGS+= sysconfdir=${EGDIR}
25 25
26CONF_FILES+= ${EGDIR}/recursor.conf-dist \ 26CONF_FILES+= ${EGDIR}/recursor.conf-dist \
27 ${PKG_SYSCONFDIR}/recursor.conf 27 ${PKG_SYSCONFDIR}/recursor.conf
28 28
29.include "../../mk/compiler.mk" 29.include "../../mk/compiler.mk"
30.if !empty(PKGSRC_COMPILER:Mclang) 30.if !empty(PKGSRC_COMPILER:Mclang)
31CXXFLAGS+= -Wno-c++11-narrowing 31CXXFLAGS+= -Wno-c++11-narrowing
32.endif 32.endif
33 33
34.include "options.mk" 
35 
36.include "../../devel/boost-headers/buildlink3.mk" 34.include "../../devel/boost-headers/buildlink3.mk"
 35.include "../../lang/lua/buildlink3.mk"
37.include "../../security/openssl/buildlink3.mk" 36.include "../../security/openssl/buildlink3.mk"
38.include "../../mk/pthread.buildlink3.mk" 37.include "../../mk/pthread.buildlink3.mk"
39.include "../../mk/bsd.pkg.mk" 38.include "../../mk/bsd.pkg.mk"

cvs diff -r1.21 -r1.22 pkgsrc/net/powerdns-recursor/distinfo (expand / switch to unified diff)

--- pkgsrc/net/powerdns-recursor/distinfo 2017/08/02 20:15:42 1.21
+++ pkgsrc/net/powerdns-recursor/distinfo 2018/01/02 12:23:55 1.22
@@ -1,14 +1,15 @@ @@ -1,14 +1,15 @@
1$NetBSD: distinfo,v 1.21 2017/08/02 20:15:42 fhajny Exp $ 1$NetBSD: distinfo,v 1.22 2018/01/02 12:23:55 fhajny Exp $
2 2
3SHA1 (pdns-recursor-4.0.6.tar.bz2) = 70c27e604841f833000416e9f06835ee92fd3616 3SHA1 (pdns-recursor-4.1.0.tar.bz2) = b7a5ed70f55c9269b65b2403d1d56a2ee43d0c28
4RMD160 (pdns-recursor-4.0.6.tar.bz2) = 93aeaaa2b26834f0a2cbea7421b6fe01a82d048e 4RMD160 (pdns-recursor-4.1.0.tar.bz2) = a8b8c0f7e46cf2841ae25f6ac406bf555260c583
5SHA512 (pdns-recursor-4.0.6.tar.bz2) = 2203fd96469deded1da677344485da221eec036b1ad9fb418a89cd4477d73f2a6fcf984a39b574561df6946f440ddf1982de20cd39d7204da9c27e74216d1159 5SHA512 (pdns-recursor-4.1.0.tar.bz2) = 1e4d70f3794005c3f45b2ec0ab580c3697e7de3096f3378b9b9d1cd53f10f95e577522ca9f634eb235b166f007e8a2bfa99f312ddf19f266ad4bb0965167fd7c
6Size (pdns-recursor-4.0.6.tar.bz2) = 1105423 bytes 6Size (pdns-recursor-4.1.0.tar.bz2) = 1222751 bytes
7SHA1 (patch-configure) = aba2ac9f8e28dc16e9f94b2d91ff0d81be07b287 7SHA1 (patch-configure) = 5c91dcbc43a51bf30af200e234f18eb9b7458e6f
8SHA1 (patch-dns.hh) = 7e9c1b10a066a605b74ebdbee2d894aed50f6c68 8SHA1 (patch-dns.hh) = 7e9c1b10a066a605b74ebdbee2d894aed50f6c68
9SHA1 (patch-ext_json11_json11.cpp) = 2de8ea8b51556bd3e3c1a88f681697eff239ab1a 9SHA1 (patch-ext_json11_json11.cpp) = 2de8ea8b51556bd3e3c1a88f681697eff239ab1a
10SHA1 (patch-iputils.hh) = 9de7c58db7468da9fd2a175464becdbe339fac9d 10SHA1 (patch-iputils.hh) = 9de7c58db7468da9fd2a175464becdbe339fac9d
11SHA1 (patch-kqueuemplexer.cc) = 87b3b6670393ee60fc96cf91c5acf575adfd06c0 11SHA1 (patch-kqueuemplexer.cc) = ff1685111c98c085e74bd64f27dfaae6fbe1e8b3
12SHA1 (patch-m4_pdns__check__os.m4) = fd84d61d71ec6eed7c9570a2d62c49646a0a4f4a 12SHA1 (patch-m4_pdns__check__os.m4) = 0e23d942944ad752fbbc0029745789ce47744628
 13SHA1 (patch-portsmplexer.cc) = b4d447d88d9f2a4e9c0dffb40a41a0e5fde7255a
13SHA1 (patch-qtype.hh) = f14eb9ad7efc7dd4a0ce220c1f93044ef69e99c2 14SHA1 (patch-qtype.hh) = f14eb9ad7efc7dd4a0ce220c1f93044ef69e99c2
14SHA1 (patch-version.cc) = 117d440f16c9095c03e28b305b85e03ea6e65c8a 15SHA1 (patch-version.cc) = 117d440f16c9095c03e28b305b85e03ea6e65c8a

File Deleted: pkgsrc/net/powerdns-recursor/Attic/options.mk

cvs diff -r1.2 -r1.3 pkgsrc/net/powerdns-recursor/patches/Attic/patch-configure (expand / switch to unified diff)

--- pkgsrc/net/powerdns-recursor/patches/Attic/patch-configure 2017/08/02 20:15:42 1.2
+++ pkgsrc/net/powerdns-recursor/patches/Attic/patch-configure 2018/01/02 12:23:55 1.3
@@ -1,23 +1,35 @@ @@ -1,23 +1,35 @@
1$NetBSD: patch-configure,v 1.2 2017/08/02 20:15:42 fhajny Exp $ 1$NetBSD: patch-configure,v 1.3 2018/01/02 12:23:55 fhajny Exp $
2 2
3Regenerate for PDNS_CHECK_OS fix. 3Regen after excluding -latomic test on NetBSD.
4 4
5--- configure.orig 2017-07-04 15:43:19.000000000 +0000 5--- configure.orig 2017-12-04 12:51:13.000000000 +0000
6+++ configure 6+++ configure
7@@ -15921,13 +15921,12 @@ fi 7@@ -15944,9 +15944,14 @@ else
8 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___latomic" >&5 
9 $as_echo "$ax_cv_check_ldflags___latomic" >&6; } 
10 if test "x$ax_cv_check_ldflags___latomic" = xyes; then : 
11- : 
12+ LDFLAGS="-latomic $LDFLAGS" 
13+ as_fn_error $? "Unable to link against libatomic, cannot continue" "$LINENO" 5 
14 else 
15- as_fn_error $? "Unable to link against libatomic, cannot continue" "$LINENO" 5 
16- 
17+ : 
18 fi 8 fi
19  9
20- LDFLAGS="-latomic $LDFLAGS" 10
 11- case "$host" in
 12- mips* | powerpc-* )
 13- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -latomic" >&5
 14+ case "$host_os" in
 15+ netbsd*)
 16+ : # no -latomic
 17+ ;;
 18+ *)
 19+ case "$host" in
 20+ mips* | powerpc-* )
 21+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -latomic" >&5
 22 $as_echo_n "checking whether the linker accepts -latomic... " >&6; }
 23 LDFLAGS="-latomic $LDFLAGS"
 24 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 25@@ -15968,7 +15973,9 @@ else
 26
 27 fi
 28 rm -f core conftest.err conftest.$ac_objext \
 29- conftest$ac_exeext conftest.$ac_ext
 30+ conftest$ac_exeext conftest.$ac_ext
 31+ ;;
 32+ esac
21 ;; 33 ;;
22 esac 34 esac
23  35

cvs diff -r1.2 -r1.3 pkgsrc/net/powerdns-recursor/patches/Attic/patch-m4_pdns__check__os.m4 (expand / switch to unified diff)

--- pkgsrc/net/powerdns-recursor/patches/Attic/patch-m4_pdns__check__os.m4 2017/08/02 20:15:42 1.2
+++ pkgsrc/net/powerdns-recursor/patches/Attic/patch-m4_pdns__check__os.m4 2018/01/02 12:23:55 1.3
@@ -1,20 +1,36 @@ @@ -1,20 +1,36 @@
1$NetBSD: patch-m4_pdns__check__os.m4,v 1.2 2017/08/02 20:15:42 fhajny Exp $ 1$NetBSD: patch-m4_pdns__check__os.m4,v 1.3 2018/01/02 12:23:55 fhajny Exp $
2 2
3Third argument is a instruction list. 3Don't insist on -latomic on mips & powerpc if on NetBSD.
4 4
5--- m4/pdns_check_os.m4.orig 2017-07-04 15:43:07.000000000 +0000 5--- m4/pdns_check_os.m4.orig 2017-12-04 12:51:03.000000000 +0000
6+++ m4/pdns_check_os.m4 6+++ m4/pdns_check_os.m4
7@@ -37,11 +37,8 @@ AC_DEFUN([PDNS_CHECK_OS],[ 7@@ -35,14 +35,21 @@ AC_DEFUN([PDNS_CHECK_OS],[
 8 AM_CONDITIONAL([HAVE_LINUX], [test "x$have_linux" = "xyes"])
 9 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$have_solaris" = "xyes"])
8  10
9 case "$host" in 11- case "$host" in
10 mips* | powerpc* ) 12- mips* | powerpc-* )
11- AX_CHECK_LINK_FLAG([-latomic], 13- AC_MSG_CHECKING([whether the linker accepts -latomic])
12- [ : ], 
13- [ AC_MSG_ERROR([Unable to link against libatomic, cannot continue]) ] 
14- ) 
15- LDFLAGS="-latomic $LDFLAGS" 14- LDFLAGS="-latomic $LDFLAGS"
16+ AX_CHECK_LINK_FLAG([-latomic],[LDFLAGS="-latomic $LDFLAGS"] 15- AC_LINK_IFELSE([m4_default([],[AC_LANG_PROGRAM()])],
17+ [AC_MSG_ERROR([Unable to link against libatomic, cannot continue])]) 16- [AC_MSG_RESULT([yes])],
 17- [AC_MSG_ERROR([Unable to link against libatomic, cannot continue])]
 18- )
 19+ case "$host_os" in
 20+ netbsd*)
 21+ : # no -latomic
 22+ ;;
 23+ *)
 24+ case "$host" in
 25+ mips* | powerpc-* )
 26+ AC_MSG_CHECKING([whether the linker accepts -latomic])
 27+ LDFLAGS="-latomic $LDFLAGS"
 28+ AC_LINK_IFELSE([m4_default([],[AC_LANG_PROGRAM()])],
 29+ [AC_MSG_RESULT([yes])],
 30+ [AC_MSG_ERROR([Unable to link against libatomic, cannot continue])]
 31+ )
 32+ ;;
 33+ esac
18 ;; 34 ;;
19 esac 35 esac
20  36

cvs diff -r1.3 -r1.4 pkgsrc/net/powerdns-recursor/patches/Attic/patch-kqueuemplexer.cc (expand / switch to unified diff)

--- pkgsrc/net/powerdns-recursor/patches/Attic/patch-kqueuemplexer.cc 2017/03/09 13:43:49 1.3
+++ pkgsrc/net/powerdns-recursor/patches/Attic/patch-kqueuemplexer.cc 2018/01/02 12:23:55 1.4
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1$NetBSD: patch-kqueuemplexer.cc,v 1.3 2017/03/09 13:43:49 fhajny Exp $ 1$NetBSD: patch-kqueuemplexer.cc,v 1.4 2018/01/02 12:23:55 fhajny Exp $
2 2
3kqueue systems normally have sys/event.h 3kqueue systems normally have sys/event.h
4 4
5--- kqueuemplexer.cc.orig 2017-01-13 08:55:55.000000000 +0000 5--- kqueuemplexer.cc.orig 2017-12-04 12:51:03.000000000 +0000
6+++ kqueuemplexer.cc 6+++ kqueuemplexer.cc
7@@ -29,9 +29,7 @@ 7@@ -28,9 +28,7 @@
 8 #include <unistd.h>
8 #include "misc.hh" 9 #include "misc.hh"
9 #include "syncres.hh" 
10 #include <sys/types.h> 10 #include <sys/types.h>
11-#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) 11-#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
12 #include <sys/event.h> 12 #include <sys/event.h>
13-#endif 13-#endif
14 #include <sys/time.h> 14 #include <sys/time.h>
15  15
16 #include "namespaces.hh" 16 #include "namespaces.hh"

File Added: pkgsrc/net/powerdns-recursor/patches/patch-portsmplexer.cc
$NetBSD: patch-portsmplexer.cc,v 1.1 2018/01/02 12:23:55 fhajny Exp $

Work around invalid cast to binary operator.

--- portsmplexer.cc.orig	2017-12-04 12:51:03.000000000 +0000
+++ portsmplexer.cc
@@ -85,8 +85,8 @@ int PortsFDMultiplexer::run(struct timev
   }
   
   struct timespec timeoutspec;
-  timeoutspec.tv_sec = time / 1000;
-  timeoutspec.tv_nsec = (time % 1000) * 1000000;
+  timeoutspec.tv_sec = (intptr_t)time / 1000;
+  timeoutspec.tv_nsec = ((intptr_t)time % 1000) * 1000000;
   unsigned int numevents=1;
   int ret= port_getn(d_portfd, d_pevents.get(), min(PORT_MAX_LIST, s_maxevents), &numevents, &timeoutspec);