Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/net/powerdns net/powerdns: Update to 4.3.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/34d8a70b5e9a
branches:  trunk
changeset: 435214:34d8a70b5e9a
user:      otis <otis%pkgsrc.org@localhost>
date:      Thu Jul 02 13:01:38 2020 +0000

description:
net/powerdns: Update to 4.3.0

Changes since 4.2.2:

* Released:
  - 7th of April 2020

* Improvements:
  - reduce the number of temporary memory allocations
  - adjust NSEC TTLs to negative TTL
  - Add more SQL schema files to packages and tarballs
  - only log "No question section in packet" at Debug logging level
  - do not update identical notified serials
  - IXFR: only sign SOA in empty response for +DO queries
  - Prepare the caches' buckets in advance
  - Rework NetmaskTree for better CPU and memory efficiency.
  - allow local-ipv6 until 4.4.0
  - Add metrics about the size of our in-memory rings
  - gpgsqlbackend: stop using prepared statements
  - Enforce a strict maximum size for the packet and records caches
  - API: optionally, do not return dnssec info in domain list
  - zone file parser: Add a parameter to limit the number of "$GENERATE" steps
  - api: avoid a large number of new database connections
  - Emulate a buffered read in the pipe backend, ~3x faster
  - LUA performance: register lua functions only once
  - API: make max request/response body size configurable
  - API: add edited_serial to Zone object
  - Improve error when notification comes in for non-slave zone
  - LUA record: rewrote the health checking system

* Bug fixes:
  - avoid IXFR-in corruption when deltas come in close together (please see the
    IXFR-in corruption upgrade notes)
  - improve sql schema updates
  - Fix NSECx for unpublished DNSKEYs properly
  - emit correct NSEC/NSEC3 bitmaps in hidden key situations
  - Refuse NSEC records with a bitmap length > 32
  - YaHTTP: Support bracketed IPv6 addresses
  - Make sure the default-publish-cds and default-publish-cdnskey options are
  - respected for AXFR
  - make sure records from LMDB backend end up in the right packet section
  - Clear the TSIG algo between iterations in the API
  - HTTP API: Allow DNAME in apex with SOA and NS records
  - various memory/thread correctness fixes
  - LUA view: do not crash on empty IP list
  - REST API: accept headers without spaces
  - on luaSynth exception, drain db output
  - tinydnsbackend: limit timestamp-based TTLs
  - Ensure that pdns can read pdns.conf when upgrading from an older package
  - Ixfrdist: handle reading of empty files gracefully
  - webserver: handle exceptions instead of SIGABRTing the world

* New features:
  - add full option to "pdns_control show-config"
  - Add "IO wait" and "steal" metrics on Linux
  - API: add includerings option to statistics endpoint
  - Add an extended status report in the bind backend
  - add default-publish-{cds|cdnskey} options
  - remotebackend: Support alsoNotifies, setFresh, getUnfreshSlaveInfos
  - Add support for managing unpublished DNSSEC keys
  - gmysql backend, add an option to send the SSL capability flag
  - pdnsutil: offer to increase serial after edit-zone

* Removed features:
  - remove goracle, lua, mydns, opendbx, oracle backends
  - deprecate SOA autocomplete in pdnsutil check-zone

* misc.:
  - remove the implicit 5->7 algorithm upgrade
  - Make Lua mandatory for Auth

For complete and up-to-date changelog, see:
https://doc.powerdns.com/authoritative/changelog/4.3.html

pkgsrc notes:
~~~~~~~~~~~~~

The default options have changed since 4.2.2 a bit:
  - option "lua" has been removed as LUA is now mandatory
  - option "luarecords" has been added with default "on". When
    not present in PKG_OPTIONS, LUA records support will be disabled.

diffstat:

 net/powerdns/Makefile.common                  |   7 +++-
 net/powerdns/PLIST                            |   4 +-
 net/powerdns/distinfo                         |  15 ++++++-----
 net/powerdns/options.mk                       |  16 ++++-------
 net/powerdns/patches/patch-configure          |  16 ++++++------
 net/powerdns/patches/patch-pdns_iputils.hh    |  35 ++++++++++++++++++++++++++
 net/powerdns/patches/patch-pdns_lua-record.cc |  36 +++++++++++++++++++++++++++
 7 files changed, 100 insertions(+), 29 deletions(-)

diffs (242 lines):

diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/Makefile.common
--- a/net/powerdns/Makefile.common      Thu Jul 02 12:53:21 2020 +0000
+++ b/net/powerdns/Makefile.common      Thu Jul 02 13:01:38 2020 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile.common,v 1.29 2020/06/07 18:55:12 otis Exp $
+# $NetBSD: Makefile.common,v 1.30 2020/07/02 13:01:38 otis Exp $
 
-PDNS_VERSION=  4.2.2
+PDNS_VERSION=  4.3.0
 DISTNAME=      pdns-${PDNS_VERSION}
 CATEGORIES=    net
 MASTER_SITES=  http://downloads.powerdns.com/releases/
@@ -17,9 +17,12 @@
 USE_TOOLS+=            bison flex gmake pkg-config
 GNU_CONFIGURE=         yes
 CONFIGURE_ARGS+=       --with-boost=${BUILDLINK_PREFIX.boost-headers}
+CONFIGURE_ARGS+=       --with-lua=lua-${LUA_VERSION_MAJOR}.${LUA_VERSION_MINOR}
 
 .include "../../devel/boost-headers/buildlink3.mk"
 .include "../../devel/boost-libs/buildlink3.mk"
+.include "../../lang/lua/buildlink3.mk"
 .include "../../security/openssl/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
 .include "../../mk/dlopen.buildlink3.mk"
 .include "../../mk/pthread.buildlink3.mk"
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/PLIST
--- a/net/powerdns/PLIST        Thu Jul 02 12:53:21 2020 +0000
+++ b/net/powerdns/PLIST        Thu Jul 02 13:01:38 2020 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.14 2020/03/27 07:45:17 adam Exp $
+@comment $NetBSD: PLIST,v 1.15 2020/07/02 13:01:38 otis Exp $
 ${PLIST.tools}bin/calidns
 ${PLIST.tools}bin/dnsbulktest
 ${PLIST.tools}bin/dnsgram
@@ -22,7 +22,6 @@
 bin/zone2sql
 ${PLIST.bind}lib/pdns/libbindbackend.la
 ${PLIST.sqlite}lib/pdns/libgsqlite3backend.la
-${PLIST.lua}lib/pdns/libluabackend.la
 ${PLIST.pipe}lib/pdns/libpipebackend.la
 ${PLIST.random}lib/pdns/librandombackend.la
 ${PLIST.remote}lib/pdns/libremotebackend.la
@@ -48,6 +47,7 @@
 man/man1/zone2json.1
 man/man1/zone2sql.1
 sbin/pdns_server
+${PLIST.sqlite}share/doc/pdns/4.2.0_to_4.3.0_schema.sqlite3.sql
 ${PLIST.sqlite}share/doc/pdns/3.4.0_to_4.0.0_schema.sqlite3.sql
 ${PLIST.sqlite}share/doc/pdns/4.0.0_to_4.2.0_schema.sqlite3.sql
 ${PLIST.sqlite}share/doc/pdns/dnssec-3.x_to_3.4.0_schema.sqlite3.sql
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/distinfo
--- a/net/powerdns/distinfo     Thu Jul 02 12:53:21 2020 +0000
+++ b/net/powerdns/distinfo     Thu Jul 02 13:01:38 2020 +0000
@@ -1,14 +1,15 @@
-$NetBSD: distinfo,v 1.40 2020/06/07 18:55:12 otis Exp $
+$NetBSD: distinfo,v 1.41 2020/07/02 13:01:38 otis Exp $
 
-SHA1 (pdns-4.2.2.tar.bz2) = d4cbc7b95bedc4aa0eb45fc28c65f43479d3a843
-RMD160 (pdns-4.2.2.tar.bz2) = 5debff3422eeb0f5857ff5406b41395cdc6b0127
-SHA512 (pdns-4.2.2.tar.bz2) = b9d0daadd89f4ab009981305d2c323ab75e283b59b94f764d53c37984a2b6200debe4e514572eac49973fcba2034df65214afb949ce3b1b4ff57b07b07f6e608
-Size (pdns-4.2.2.tar.bz2) = 1256587 bytes
-SHA1 (patch-configure) = 1503efadf2d8baaaa0887b61bd4f7672ea33a043
+SHA1 (pdns-4.3.0.tar.bz2) = d2a1a85173d02f884bc303478f1f280cc59f6c30
+RMD160 (pdns-4.3.0.tar.bz2) = 71b3b9e1a41e4942e851cb11595e3ab7e48bfa75
+SHA512 (pdns-4.3.0.tar.bz2) = 0734dbfb83a2e5080dc54cfc016ceb3e1f7e15a2de2f33392b2f3c995357fa97f9e87ff21e969f148c3e881165471d3058eb2b9cf632117ebce0d7818e025fe2
+Size (pdns-4.3.0.tar.bz2) = 1211536 bytes
+SHA1 (patch-configure) = 8e13bf3a1432369052be32a636655ea86a0db75d
 SHA1 (patch-ext_json11_json11.cpp) = a8ffe67156a836841aef8a6bba134a82283f381e
 SHA1 (patch-pdns_dnsscope.cc) = b289b750686b25041c3e291fb0d3d562beb36eaf
 SHA1 (patch-pdns_iputils.cc) = fbd3bb210216bb98c3cd73b702b6dea486c51dec
-SHA1 (patch-pdns_iputils.hh) = 714277322ea721ea0439fc6aa0265bd290219e8b
+SHA1 (patch-pdns_iputils.hh) = aa90245d84415c98d4af4a57349b812c536446e9
+SHA1 (patch-pdns_lua-record.cc) = 8cdf7d692ae7ec636c38e9f5cd2f91467364aae3
 SHA1 (patch-pdns_qtype.hh) = 0f8bca4c0cafea9a5257a08077fa42b4c52127f5
 SHA1 (patch-pdns_version.cc) = 25917c329dafa34e657fa31c7a9abd99110bb4b0
 SHA1 (patch-pdns_webserver.cc) = b698338a168066f65a96313eab1bb1292192df94
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/options.mk
--- a/net/powerdns/options.mk   Thu Jul 02 12:53:21 2020 +0000
+++ b/net/powerdns/options.mk   Thu Jul 02 13:01:38 2020 +0000
@@ -1,12 +1,12 @@
-# $NetBSD: options.mk,v 1.7 2020/03/17 19:04:49 adam Exp $
+# $NetBSD: options.mk,v 1.8 2020/07/02 13:01:38 otis Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.powerdns
-PKG_SUPPORTED_OPTIONS= bind botan lua pipe random remote sqlite tools zeromq
-PKG_SUGGESTED_OPTIONS= bind pipe random
+PKG_SUPPORTED_OPTIONS= bind botan luarecords pipe random remote sqlite tools zeromq
+PKG_SUGGESTED_OPTIONS= bind luarecords pipe random
 
 .include "../../mk/bsd.options.mk"
 
-PLIST_VARS+=           bind lua pipe random remote sqlite tools
+PLIST_VARS+=           bind luarecords pipe random remote sqlite tools
 
 .if !empty(PKG_OPTIONS:Mbind)
 PDNS_MODULES+=         bind
@@ -18,14 +18,10 @@
 .include "../../security/botan-devel/buildlink3.mk"
 .endif
 
-.if !empty(PKG_OPTIONS:Mlua)
-.include "../../lang/lua/buildlink3.mk"
-.include "../../www/curl/buildlink3.mk"
-PLIST.lua=             yes
-PDNS_MODULES+=         lua
+.if !empty(PKG_OPTIONS:Mluarecords)
+CONFIGURE_ARGS+=       --enable-lua-records
 .else
 CONFIGURE_ARGS+=       --disable-lua-records
-CONFIGURE_ARGS+=       --without-lua
 .endif
 
 .if !empty(PKG_OPTIONS:Mpipe)
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/patches/patch-configure
--- a/net/powerdns/patches/patch-configure      Thu Jul 02 12:53:21 2020 +0000
+++ b/net/powerdns/patches/patch-configure      Thu Jul 02 13:01:38 2020 +0000
@@ -1,22 +1,22 @@
-$NetBSD: patch-configure,v 1.9 2020/03/17 19:04:49 adam Exp $
+$NetBSD: patch-configure,v 1.10 2020/07/02 13:01:38 otis Exp $
 
 Do not add default compiler flags.
 Leave pkgsrc to handle security features.
 
---- configure.orig     2019-11-29 19:23:06.000000000 +0000
+--- configure.orig     2020-04-06 12:51:03.000000000 +0000
 +++ configure
-@@ -3721,8 +3721,8 @@ case $host_os in *\ *) host_os=`echo "$h
+@@ -3738,8 +3738,8 @@ case $host_os in *\ *) host_os=`echo "$h
  
  
  # Add some default CFLAGS and CXXFLAGS, can be appended to using the environment variables
--CFLAGS="-Wall -g -O2 $CFLAGS"
--CXXFLAGS="-Wall -g -O2 $CXXFLAGS"
+-CFLAGS="-g -O2 -Wall -Wextra -Wshadow -Wno-unused-parameter $CFLAGS"
+-CXXFLAGS="-g -O2 -Wall -Wextra -Wshadow -Wno-unused-parameter $CXXFLAGS"
 +CFLAGS="-Wall $CFLAGS"
 +CXXFLAGS="-Wall $CXXFLAGS"
  
  ac_ext=c
  ac_cpp='$CPP $CPPFLAGS'
-@@ -7884,7 +7884,7 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -7901,7 +7901,7 @@ rm -f core conftest.err conftest.$ac_obj
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_cxx__fstack_protector" >&5
  $as_echo "$gl_cv_warn_cxx__fstack_protector" >&6; }
@@ -25,7 +25,7 @@
  
          CFLAGS="-fstack-protector $CFLAGS"
          CXXFLAGS="-fstack-protector $CXXFLAGS"
-@@ -22723,7 +22723,7 @@ fi
+@@ -22582,7 +22582,7 @@ fi
  
    if test "x$PG_CONFIG" != "x" -o "x$PGSQL_LIBS" = "x"; then :
  
@@ -34,7 +34,7 @@
  
        # Extract the first word of "pg_config", so it can be a program name with args.
  set dummy pg_config; ac_word=$2
-@@ -22767,7 +22767,7 @@ fi
+@@ -22626,7 +22626,7 @@ fi
  
  
  fi
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/patches/patch-pdns_iputils.hh
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/net/powerdns/patches/patch-pdns_iputils.hh        Thu Jul 02 13:01:38 2020 +0000
@@ -0,0 +1,35 @@
+$NetBSD: patch-pdns_iputils.hh,v 1.5 2020/07/02 13:01:38 otis Exp $
+
+Rename some identifiers to non-clashing names.
+
+Reference:
+https://github.com/PowerDNS/pdns/issues/9279
+
+--- pdns/iputils.hh.orig       2020-04-06 12:07:50.000000000 +0000
++++ pdns/iputils.hh
+@@ -339,9 +339,9 @@ union ComboAddress {
+         index = 32 + index;
+       }
+ 
+-      uint32_t s_addr = ntohl(sin4.sin_addr.s_addr);
++      uint32_t ls_addr = ntohl(sin4.sin_addr.s_addr);
+ 
+-      return ((s_addr & (1<<index)) != 0x00000000);
++      return ((ls_addr & (1<<index)) != 0x00000000);
+     }
+     if(isIPv6()) {
+       if (index >= 128)
+@@ -352,11 +352,11 @@ union ComboAddress {
+         index = 128 + index;
+       }
+ 
+-      uint8_t *s_addr = (uint8_t*)sin6.sin6_addr.s6_addr;
++      uint8_t *ls_addr = (uint8_t*)sin6.sin6_addr.s6_addr;
+       uint8_t byte_idx = index / 8;
+       uint8_t bit_idx = index % 8;
+ 
+-      return ((s_addr[15-byte_idx] & (1 << bit_idx)) != 0x00);
++      return ((ls_addr[15-byte_idx] & (1 << bit_idx)) != 0x00);
+     }
+     return false;
+   }
diff -r c1afb145813f -r 34d8a70b5e9a net/powerdns/patches/patch-pdns_lua-record.cc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/net/powerdns/patches/patch-pdns_lua-record.cc     Thu Jul 02 13:01:38 2020 +0000
@@ -0,0 +1,36 @@
+$NetBSD: patch-pdns_lua-record.cc,v 1.1 2020/07/02 13:01:38 otis Exp $
+
+Rename some identifiers to non-clashing names.
+
+Reference:
+https://github.com/PowerDNS/pdns/issues/9279
+
+--- pdns/lua-record.cc.orig    2020-02-25 06:57:13.000000000 +0000
++++ pdns/lua-record.cc
+@@ -658,12 +658,12 @@ void setupLuaRecords()
+         for(int i=0; i<8; ++i) {
+           if(i)
+             together+=":";
+-          string quad;
++          string lquad;
+           for(int j=0; j <4; ++j) {
+-            quad.append(1, labels[31-i*4-j][0]);
++            lquad.append(1, labels[31-i*4-j][0]);
+             together += labels[31-i*4-j][0];
+           }
+-          quads.push_back(quad);
++          quads.push_back(lquad);
+         }
+         ComboAddress ip6(together,0);
+ 
+@@ -683,8 +683,8 @@ void setupLuaRecords()
+           fmt % labels[i];
+         fmt % dashed;
+ 
+-        for(const auto& quad : quads)
+-          fmt % quad;
++        for(const auto& lquad : quads)
++          fmt % lquad;
+ 
+         return fmt.str();
+       }



Home | Main Index | Thread Index | Old Index