Hi,

works for me both as slave and master. Tiny setup but at least one bug
in pdnsutil I spotted earlier (setting  more than master as a slave) is fixed.

        -Otto

On Sat, Dec 09, 2017 at 09:36:14AM +0100, Florian Obser wrote:

> jca pointed out that I send an update for an older version (4.0.5)
> before, so please disregard that. This jumps directly to the 4.1.x
> series.
> 
> - our local patch to json11.cpp is no longer needed, upstream
>   picked it up
> - two more local patches are needed, mplexer.hh is already fixed by
>   upstream and nproxy.cc is reported so they should go away with
>   the next update
> - jca pointed out that the master side does https now, so switched it,
>   same for the home page
> - otto@ pointed out that we install the man pages for the tools but
>   don't build tools. This is enabled now as per his request.
> - enabling the ldap module introduces a hard dependency on kerberos,
>   (configure aborts) since I have no experience with kerberos,
>   don't use ldap and never heard of anyone using ldap I chose to
>   drop ldap support. It is hard enough to get OKs - let alone
>   tests for powerdns, so I will focus on the things *I* need.
>   If you need other things, please step up.
> 
> I assume the ldap removal needs some black magic somewhere in quirks?
> Cluebats?
> 
> This runs in production and works for me[tm]
> Tests, OKs?
> 
> diff --git Makefile Makefile
> index c96c9a9b108..1a323cde121 100644
> --- Makefile
> +++ Makefile
> @@ -5,25 +5,19 @@ BROKEN-hppa =               undefined reference to 
> '__sync_fetch_and_add_4'
>  COMMENT-main=                modular authoritative nameserver (with database 
> support)
>  COMMENT-mysql=               MySQL database access module for PowerDNS
>  COMMENT-pgsql=               PGSQL database access module for PowerDNS
> -COMMENT-ldap=                LDAP module for PowerDNS
>  
> -V=                   4.0.4
> +V=                   4.1.0
>  DISTNAME=            pdns-${V}
>  EXTRACT_SUFX =               .tar.bz2
>  PKGNAME=             powerdns-${V}
>  PKGNAME-main=                powerdns-${V}
>  PKGNAME-mysql=               powerdns-mysql-${V}
>  PKGNAME-pgsql=               powerdns-pgsql-${V}
> -PKGNAME-ldap=                powerdns-ldap-${V}
>  CATEGORIES=          net
> -HOMEPAGE=            http://www.powerdns.com/
> +HOMEPAGE=            https://www.powerdns.com/
>  MAINTAINER=          Florian Obser <florian+po...@narrans.de>
> -REVISION-ldap=               0
> -REVISION-main=               0
> -REVISION-mysql=              0
> -REVISION-pgsql=              0
>  
> -MULTI_PACKAGES=              -main -mysql -pgsql -ldap
> +MULTI_PACKAGES=              -main -mysql -pgsql
>  
>  # GPLv2
>  PERMIT_PACKAGE_CDROM=        Yes
> @@ -37,7 +31,7 @@ WANTLIB-main += ${WANTLIB}
>  WANTLIB-main += boost_program_options-mt boost_serialization-mt
>  WANTLIB-main += bz2 c crypto gmp sqlite3 z
>  
> -MASTER_SITES=                http://downloads.powerdns.com/releases/
> +MASTER_SITES=                https://downloads.powerdns.com/releases/
>  
>  NO_TEST=             Yes
>  
> @@ -46,7 +40,7 @@ LIB_DEPENDS-main=   ${LIB_DEPENDS} \
>                       devel/boost \
>                       devel/gmp
>  
> -PSEUDO_FLAVORS+=     no_mysql no_pgsql no_ldap
> +PSEUDO_FLAVORS+=     no_mysql no_pgsql
>  FLAVOR?=
>  
>  BACKENDS=            gsqlite3
> @@ -60,7 +54,9 @@ CONFIGURE_ARGS+=    --disable-shared \
>                       --with-dynmodules="${BACKENDS}" \
>                       --without-lua \
>                       --disable-hardening \
> -                     --without-protobuf
> +                     --without-protobuf \
> +                     --enable-tools
> +CONFIGURE_ARGS+=     --without-ldap
>  
>  CONFIGURE_ENV+=              CPPFLAGS="-I${LOCALBASE}/include" \
>                       LDFLAGS="-L${LOCALBASE}/lib"
> @@ -93,17 +89,6 @@ LIB_DEPENDS-pgsql= ${LIB_DEPENDS} \
>  RUN_DEPENDS-pgsql=   ${FULLPKGNAME-main}:net/powerdns
>  WANTLIB-pgsql=               crypto pq>=2 ssl ${WANTLIB}
>  
> -# LDAP
> -.if ${BUILD_PACKAGES:M-ldap}
> -BACKENDS+=           ldap
> -.else
> -CONFIGURE_ARGS+=     --without-ldap
> -.endif
> -LIB_DEPENDS-ldap=    ${LIB_DEPENDS} \
> -                     databases/openldap
> -RUN_DEPENDS-ldap=    ${FULLPKGNAME-main}:net/powerdns
> -WANTLIB-ldap+=               ${WANTLIB} crypto lber-2.4 ldap_r-2.4 sasl2 ssl
> -
>  EXAMPLE_DIR=         ${PREFIX}/share/examples/pdns/
>  post-install:
>       rm -f ${PREFIX}/lib/pdns/*.la
> diff --git distinfo distinfo
> index 0b14f5ac821..7ba47e175d1 100644
> --- distinfo
> +++ distinfo
> @@ -1,2 +1,2 @@
> -SHA256 (pdns-4.0.4.tar.bz2) = 2XSrid5pR3x/WBoyM7xzHqy7Q9R5KR5HKyxTHIO212M=
> -SIZE (pdns-4.0.4.tar.bz2) = 1320327
> +SHA256 (pdns-4.1.0.tar.bz2) = 25GTsPAlXCTfv8Mez/i9OeIf7AX/dSblrqljq8UX8PM=
> +SIZE (pdns-4.1.0.tar.bz2) = 1116905
> diff --git patches/patch-ext_json11_json11_cpp 
> patches/patch-ext_json11_json11_cpp
> deleted file mode 100644
> index caf69e13d07..00000000000
> --- patches/patch-ext_json11_json11_cpp
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -$OpenBSD: patch-ext_json11_json11_cpp,v 1.1 2017/05/27 06:21:43 espie Exp $
> -nullptrs are non-comparable.
> -patch from freebsd
> -
> -Index: ext/json11/json11.cpp
> ---- ext/json11/json11.cpp.orig
> -+++ ext/json11/json11.cpp
> -@@ -37,11 +37,21 @@ using std::make_shared;
> - using std::initializer_list;
> - using std::move;
> - 
> -+/* Helper for representing null - just a do-nothing struct, plus comparison
> -+ * operators so the helpers in JsonValue work. We can't use nullptr_t 
> because
> -+ * it may not be orderable.
> -+*/
> -+
> -+struct NullStruct {
> -+    bool operator==(NullStruct) const { return true; }
> -+    bool operator<(NullStruct) const { return false; }
> -+};
> -+
> - /* * * * * * * * * * * * * * * * * * * *
> -  * Serialization
> -  */
> - 
> --static void dump(std::nullptr_t, string &out) {
> -+static void dump(NullStruct, string &out) {
> -     out += "null";
> - }
> - 
> -@@ -204,9 +214,9 @@ class JsonObject final : public Value<Json::OBJECT, Js
> -     explicit JsonObject(Json::object &&value)      : Value(move(value)) {}
> - };
> - 
> --class JsonNull final : public Value<Json::NUL, std::nullptr_t> {
> -+class JsonNull final : public Value<Json::NUL, NullStruct> {
> - public:
> --    JsonNull() : Value(nullptr) {}
> -+    JsonNull() : Value({}) {}
> - };
> - 
> - /* * * * * * * * * * * * * * * * * * * *
> diff --git patches/patch-pdns_mplexer_hh patches/patch-pdns_mplexer_hh
> new file mode 100644
> index 00000000000..bd5842787e2
> --- /dev/null
> +++ patches/patch-pdns_mplexer_hh
> @@ -0,0 +1,14 @@
> +$OpenBSD$
> +needed for timeval
> +
> +Index: pdns/mplexer.hh
> +--- pdns/mplexer.hh.orig
> ++++ pdns/mplexer.hh
> +@@ -21,6 +21,7 @@
> +  */
> + #ifndef PDNS_MPLEXER_HH
> + #define PDNS_MPLEXER_HH
> ++#include <sys/time.h>
> + #include <boost/function.hpp>
> + #include <boost/any.hpp>
> + #include <boost/shared_array.hpp>
> diff --git patches/patch-pdns_nproxy_cc patches/patch-pdns_nproxy_cc
> new file mode 100644
> index 00000000000..db102950e03
> --- /dev/null
> +++ patches/patch-pdns_nproxy_cc
> @@ -0,0 +1,15 @@
> +$OpenBSD$
> +
> +needed for chroot et al
> +
> +Index: pdns/nproxy.cc
> +--- pdns/nproxy.cc.orig
> ++++ pdns/nproxy.cc
> +@@ -38,6 +38,7 @@
> + #include <sys/stat.h>
> + #include <fcntl.h>
> + #include <grp.h>
> ++#include <unistd.h>
> + #include "dnsrecords.hh"
> + #include "mplexer.hh"
> + #include "statbag.hh"
> diff --git pkg/PLIST-main pkg/PLIST-main
> index d57f7c64a56..10401d1b415 100644
> --- pkg/PLIST-main
> +++ pkg/PLIST-main
> @@ -5,10 +5,24 @@
>  @pkgpath net/powerdns,-sqlite3
>  @newgroup _powerdns:609
>  @newuser _powerdns:609:_powerdns:daemon:PowerDNS 
> Server:/nonexistent:/sbin/nologin
> +@bin bin/dnsbulktest
> +@bin bin/dnsgram
> +@bin bin/dnsreplay
> +@bin bin/dnsscan
> +@bin bin/dnsscope
> +@bin bin/dnstcpbench
> +@bin bin/dnswasher
> +@bin bin/dumresp
> +@bin bin/ixplore
> +@bin bin/nproxy
> +@bin bin/nsec3dig
>  @bin bin/pdns_control
> +@bin bin/pdns_notify
>  @bin bin/pdnsutil
> +@bin bin/saxfr
> +@bin bin/sdig
> +@bin bin/stubquery
>  @bin bin/zone2json
> -@bin bin/zone2ldap
>  @bin bin/zone2sql
>  lib/pdns/
>  lib/pdns/libbindbackend.so
> @@ -36,6 +50,8 @@ lib/pdns/libgsqlite3backend.so
>  @man man/man1/zone2sql.1
>  @bin sbin/pdns_server
>  share/doc/pdns/
> +share/doc/pdns/3.4.0_to_4.1.0_schema.mysql.sql
> +share/doc/pdns/3.4.0_to_4.1.0_schema.pgsql.sql
>  share/doc/pdns/dnssec-3.x_to_3.4.0_schema.sqlite3.sql
>  share/doc/pdns/nodnssec-3.x_to_3.4.0_schema.sqlite3.sql
>  share/doc/pdns/schema.sqlite3.sql
> 
> 
> 
> -- 
> I'm not entirely sure you are real.

Reply via email to