diff options
author | fhajny <fhajny@pkgsrc.org> | 2014-12-10 14:50:08 +0000 |
---|---|---|
committer | fhajny <fhajny@pkgsrc.org> | 2014-12-10 14:50:08 +0000 |
commit | ec6df0dec6114c309123dc5c4288491da073dc5b (patch) | |
tree | 9f65ae7e9ca64fb12967db62f01f347d65d24062 /net/powerdns | |
parent | 48b114f9204889a367554903cb5f2acb339d8ad5 (diff) | |
download | pkgsrc-ec6df0dec6114c309123dc5c4288491da073dc5b.tar.gz |
Update PowerDNS to 3.4.1.
pkgsrc changes:
- SQLite 2.x support no longer exists
- SQLite 3.x support cannot be compiled outside the main package because
of how symbols are distributed, so making it a compile time option
for net/powerdns now.
Too many changes since 2.9.22.5 (over 2 years ago), see the full changelog:
http://doc.powerdns.com/md/changelog/
Upgrade notes:
- PowerDNS 3.4 comes with a mandatory database schema upgrade coming from
any previous 3.x release.
- PowerDNS 3.1 introduces native SQLite3 support for storing key material for
DNSSEC in the bindbackend. With this change, support for bind+gsql-setups
('hybrid mode') has been dropped.
- PowerDNS 3.0 introduces full DNSSEC support which requires changes
to database schemas. By default, old non-DNSSEC schema is assumed.
Please see the docs on upgrading for particular steps that need to be taken:
http://doc.powerdns.com/md/authoritative/upgrading/
Diffstat (limited to 'net/powerdns')
34 files changed, 533 insertions, 635 deletions
diff --git a/net/powerdns/Makefile b/net/powerdns/Makefile index 42f3c4c6901..190b0266212 100644 --- a/net/powerdns/Makefile +++ b/net/powerdns/Makefile @@ -1,15 +1,17 @@ -# $NetBSD: Makefile,v 1.9 2012/10/23 17:18:59 asau Exp $ +# $NetBSD: Makefile,v 1.10 2014/12/10 14:50:08 fhajny Exp $ .include "Makefile.common" PKGNAME= ${DISTNAME:S/pdns/powerdns/} -PKGREVISION= 2 COMMENT= Modern, advanced and high performance nameserver +.include "options.mk" + CONFIGURE_ARGS+= --with-modules="geo" -CONFIGURE_ARGS+= --with-dynmodules="pipe" +CONFIGURE_ARGS+= --with-dynmodules="${PDNS_MODULES}" RCD_SCRIPTS= pdns +SMF_NAME= pdns EGDIR= ${PREFIX}/share/examples/pdns MAKE_ENV+= EGDIR=${EGDIR} @@ -24,4 +26,5 @@ SUBST_SED.conf+= -e 's,@PKG_SYSCONFDIR@,${PKG_SYSCONFDIR},' LDFLAGS.SunOS+= -lsocket -lnsl +.include "../../databases/sqlite3/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/net/powerdns/Makefile.backend b/net/powerdns/Makefile.backend index d58fe129ef2..ab388bb6b2b 100644 --- a/net/powerdns/Makefile.backend +++ b/net/powerdns/Makefile.backend @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.backend,v 1.1.1.1 2006/08/13 09:34:21 ghen Exp $ +# $NetBSD: Makefile.backend,v 1.2 2014/12/10 14:50:08 fhajny Exp $ .include "../../net/powerdns/Makefile.common" @@ -8,7 +8,6 @@ DISTINFO_FILE= ${.CURDIR}/../../net/powerdns/distinfo PATCHDIR= ${.CURDIR}/../../net/powerdns/patches CONFIGURE_ARGS+= --disable-pdns_server -CONFIGURE_ARGS+= --disable-recursor CONFIGURE_ARGS+= --with-modules="" BUILD_DIRS= modules diff --git a/net/powerdns/Makefile.common b/net/powerdns/Makefile.common index 3cbd6257932..c7ade8741c4 100644 --- a/net/powerdns/Makefile.common +++ b/net/powerdns/Makefile.common @@ -1,22 +1,31 @@ -# $NetBSD: Makefile.common,v 1.9 2014/10/05 16:41:08 wiz Exp $ -# -# used by net/powerdns/Makefile.backend +# $NetBSD: Makefile.common,v 1.10 2014/12/10 14:50:08 fhajny Exp $ -PDNS_VERSION= 2.9.22.5 +PDNS_VERSION= 3.4.1 DISTNAME= pdns-${PDNS_VERSION} CATEGORIES= net MASTER_SITES= http://downloads.powerdns.com/releases/ +EXTRACT_SUFX= .tar.bz2 MAINTAINER= pkgsrc-users@NetBSD.org HOMEPAGE= http://www.powerdns.com/ +LICENSE= gnu-gpl-v2 -USE_TOOLS+= gmake +USE_TOOLS+= gmake pkg-config USE_LANGUAGES= c c++ USE_LIBTOOL= yes GNU_CONFIGURE= yes GNU_CONFIGURE_LIBSUBDIR=pdns +CONFIGURE_ARGS+= --enable-pdns_server +CONFIGURE_ARGS+= --with-system-polarssl +CONFIGURE_ARGS+= --without-lua + +BUILDLINK_TRANSFORM+= rm:-fstack-protector + .include "../../devel/boost-headers/buildlink3.mk" +.include "../../devel/boost-libs/buildlink3.mk" +.include "../../devel/gmp/buildlink3.mk" .include "../../devel/zlib/buildlink3.mk" +.include "../../security/polarssl/buildlink3.mk" .include "../../mk/pthread.buildlink3.mk" diff --git a/net/powerdns/PLIST b/net/powerdns/PLIST index 7a3d2938046..37bf6b617ae 100644 --- a/net/powerdns/PLIST +++ b/net/powerdns/PLIST @@ -1,11 +1,37 @@ -@comment $NetBSD: PLIST,v 1.5 2014/03/11 14:05:10 jperkin Exp $ +@comment $NetBSD: PLIST,v 1.6 2014/12/10 14:50:08 fhajny Exp $ +${PLIST.tools}bin/dnsbulktest +${PLIST.tools}bin/dnsdist +${PLIST.tools}bin/dnsreplay +${PLIST.tools}bin/dnsscan +${PLIST.tools}bin/dnsscope +${PLIST.tools}bin/dnstcpbench +${PLIST.tools}bin/dnswasher +${PLIST.tools}bin/nproxy +${PLIST.tools}bin/nsec3dig bin/pdns_control +bin/pdnssec +${PLIST.tools}bin/saxfr +bin/zone2json bin/zone2ldap bin/zone2sql -lib/pdns/libgeobackend.la -lib/pdns/libpipebackend.la +lib/pdns/pdns/libgeobackend.la +${PLIST.bind}lib/pdns/pdns/libbindbackend.la +${PLIST.pipe}lib/pdns/pdns/libpipebackend.la +${PLIST.random}lib/pdns/pdns/librandombackend.la +${PLIST.remote}lib/pdns/pdns/libremotebackend.la +${PLIST.sqlite}lib/pdns/pdns/libgsqlite3backend.la +${PLIST.tools}man/man1/dnsdist.1 +${PLIST.tools}man/man1/dnstcpbench.1 +${PLIST.tools}man/man8/dnsreplay.8 +${PLIST.tools}man/man8/dnsscope.8 +${PLIST.tools}man/man8/dnswasher.8 man/man8/pdns_control.8 man/man8/pdns_server.8 +man/man8/pdnssec.8 +man/man8/zone2ldap.8 man/man8/zone2sql.8 sbin/pdns_server +${PLIST.sqlite}share/doc/pdns/dnssec-3.x_to_3.4.0_schema.sqlite3.sql +${PLIST.sqlite}share/doc/pdns/nodnssec-3.x_to_3.4.0_schema.sqlite3.sql +${PLIST.sqlite}share/doc/pdns/schema.sqlite3.sql share/examples/pdns/pdns.conf-dist diff --git a/net/powerdns/distinfo b/net/powerdns/distinfo index b9cd3eb62a1..ad3161eb499 100644 --- a/net/powerdns/distinfo +++ b/net/powerdns/distinfo @@ -1,29 +1,24 @@ -$NetBSD: distinfo,v 1.13 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: distinfo,v 1.14 2014/12/10 14:50:08 fhajny Exp $ -SHA1 (pdns-2.9.22.5.tar.gz) = 7a514fe624c110afb8a262f4d76376d0f8e17bea -RMD160 (pdns-2.9.22.5.tar.gz) = 8be76a7a63c3366d55724815245e2f955ec0adda -Size (pdns-2.9.22.5.tar.gz) = 1077617 bytes -SHA1 (patch-aa) = e31080087d9369349e912c94e7dbfce72c9fc629 -SHA1 (patch-ab) = f54ace6ff60162e50119eb11bcb2f5db5e1ea480 -SHA1 (patch-configure) = 2a0beb262c421d7887dcabc56102c04b340a920b -SHA1 (patch-modules_pipebackend_pipebackend.cc) = 760d8035e99faadfbb90ee31230e43c5157aecb4 -SHA1 (patch-modules_pipebackend_pipebackend.hh) = 7451c14660674210ca2024767e5cd44f7ec9da54 -SHA1 (patch-pdns_aes_brg_endian.h) = f7e5294251cd0d89e8ff802292f27b0c4cb50be7 -SHA1 (patch-pdns_backends_bind_bindbackend2.cc) = 46fdd94323cd2ecb914e30db4560495cc8efd660 -SHA1 (patch-pdns_backends_bind_bindbackend2.hh) = 0cc15f8d7c53cc5dd2b81c4e2e67601a5192ab54 -SHA1 (patch-pdns_dns.hh) = f7d95f4c28fd986e76b4c25333b1b063992aa0c5 -SHA1 (patch-pdns_dnspacket.cc) = 659f6511b2fabfebb48fd9472a5e43fc42c0f356 -SHA1 (patch-pdns_dnsparser.cc) = 895e66ce1afb5f5af4bcb367a8946ab3d4eb5703 -SHA1 (patch-pdns_dnsparser.hh) = cd39fda0d7952bd9858f28eac750c7c05be08ced -SHA1 (patch-pdns_dnspbench.cc) = 91670ad952f185c325270d977545425ef86dffe9 -SHA1 (patch-pdns_dynloader.cc) = 26743b3465fccb8a013790dcdc64d195af0666da -SHA1 (patch-pdns_dynmessenger.cc) = df89ba91abc96319b323fc19b413b127112f4afb -SHA1 (patch-pdns_ext_nedmalloc_malloc.c) = 979ccbf76edf9ff8ceeded0cf6fc1e401d1c1504 -SHA1 (patch-pdns_htimer.cc) = 3e984f93da7b7be3f309e45ba1182d75c3980769 -SHA1 (patch-pdns_nameserver.cc) = 5ff1dd6d419c4cbbf3e12bcfca22164dafcc3df6 -SHA1 (patch-pdns_packethandler.cc) = db36bf022ebf1e27f52e2e5f05f5fb81783f2288 -SHA1 (patch-pdns_pdns_recursor.cc) = 03b012eab35dd4b83602151736cf61bdd74f14ef -SHA1 (patch-pdns_receiver.cc) = 8a9932413f5c8234478cd9d5b3f5237fcf9ac087 -SHA1 (patch-pdns_recursor__cache.cc) = 242bff58eff98ee943a7fb599a6590f079328251 -SHA1 (patch-pdns_resolver.cc) = 4a73c460abbbd223109ec119c6280f19d7402956 -SHA1 (patch-pdns_tcpreceiver.cc) = 836a1a114a8a6fdf67335db64909882ca498096a +SHA1 (pdns-3.4.1.tar.bz2) = e4d807b4dc27ef130a49e0efaf82a74cb66f5b11 +RMD160 (pdns-3.4.1.tar.bz2) = fe9df921ac82db834bc011c7c20ad9b436c70cec +Size (pdns-3.4.1.tar.bz2) = 1237002 bytes +SHA1 (patch-aa) = 7fc9bf227c21983d5492f7359d313a3b4e56e43f +SHA1 (patch-ab) = 705a7f5f7035a46ab72b08ef24b1db888a406122 +SHA1 (patch-configure) = ef0dc268eb81470c3449eab39cde6ddf9f49175f +SHA1 (patch-modules_luabackend_luabackend.hh) = fd1d04d71ff560efd92137bd468475d5e5c165ce +SHA1 (patch-modules_pipebackend_pipebackend.cc) = 51cd06282231768df2e6f82c01e30575dc390a95 +SHA1 (patch-modules_pipebackend_pipebackend.hh) = 3ff9f666a1b348810be38ffe67fd740521390630 +SHA1 (patch-pdns_botan18signers.cc) = 6827a3e2eade467c53d710b57352bd9ed978b47c +SHA1 (patch-pdns_dns.hh) = c8864cd742a2f5bd8209e6ab569d018dbff3f836 +SHA1 (patch-pdns_dnspacket.cc) = c6f1d543e07a1d081056b49d063fd0ca19151fd8 +SHA1 (patch-pdns_dnsparser.cc) = ec1a279a48825a2adbc528a644b711d225a7e728 +SHA1 (patch-pdns_dnsparser.hh) = d9480c40b97fb8c7d8f1dbbe1777c42ef270d9d1 +SHA1 (patch-pdns_dnsscope.cc) = cc38014e1eb20ed3c65b59714e2725a8283f6391 +SHA1 (patch-pdns_dynloader.cc) = 6ef7957917936f077307a4b6c79afe5a4a6ef7c7 +SHA1 (patch-pdns_htimer.cc) = 43eb784a58dcad9b3cedca4a6aeae777e33bd2f9 +SHA1 (patch-pdns_pdns_recursor.cc) = df9465d337fceb93caaff7ffc32d17681a8fe77d +SHA1 (patch-pdns_receiver.cc) = 4411bfeccb2814550b834ddabee930918631c666 +SHA1 (patch-pdns_recursor__cache.cc) = a4c63c20a3e58d996a631c8a7754b8afb45cdb86 +SHA1 (patch-pdns_resolver.cc) = 3b03f3dde04217d527f6e841ad9d5f19bbc79f53 +SHA1 (patch-pdns_tcpreceiver.cc) = 3d86e0e87fe82c034210f61d6a3c57cd7ab9d3ba diff --git a/net/powerdns/files/smf/manifest.xml b/net/powerdns/files/smf/manifest.xml new file mode 100644 index 00000000000..b6bfc01b350 --- /dev/null +++ b/net/powerdns/files/smf/manifest.xml @@ -0,0 +1,30 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type="manifest" name="pdns"> + <service name="@SMF_PREFIX@/pdns" type="service" version="1"> + <create_default_instance enabled="false" /> + <single_instance /> + <dependency name="network" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/milestone/network:default" /> + </dependency> + <dependency name="filesystem" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/system/filesystem/local" /> + </dependency> + <method_context></method_context> + <exec_method type="method" name="start" exec="@PREFIX@/sbin/pdns_server --daemon=yes" timeout_seconds="60" /> + <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" /> + <property_group name="startd" type="framework"> + <propval name="duration" type="astring" value="contract" /> + <propval name="ignore_error" type="astring" value="core,signal" /> + </property_group> + <property_group name="application" type="application"> + <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/pdns.conf" /> + </property_group> + <stability value="Evolving" /> + <template> + <common_name> + <loctext xml:lang="C">PowerDNS server service</loctext> + </common_name> + </template> + </service> +</service_bundle> diff --git a/net/powerdns/options.mk b/net/powerdns/options.mk new file mode 100644 index 00000000000..0d21fe5d450 --- /dev/null +++ b/net/powerdns/options.mk @@ -0,0 +1,45 @@ +# $NetBSD: options.mk,v 1.1 2014/12/10 14:50:08 fhajny Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.powerdns +PKG_SUPPORTED_OPTIONS= bind botan pipe random remote sqlite tools +PKG_SUGGESTED_OPTIONS= bind pipe random + +.include "../../mk/bsd.options.mk" + +PLIST_VARS+= bind pipe random remote sqlite tools + +.if !empty(PKG_OPTIONS:Mbind) +PDNS_MODULES+= bind +PLIST.bind= yes +.endif + +.if !empty(PKG_OPTIONS:Mbotan) +CONFIGURE_ARGS+= --enable-botan1.8 +.include "../../security/botan/buildlink3.mk" +.endif + +.if !empty(PKG_OPTIONS:Mpipe) +PLIST.pipe= yes +PDNS_MODULES+= pipe +.endif + +.if !empty(PKG_OPTIONS:Mrandom) +PLIST.random= yes +PDNS_MODULES+= random +.endif + +.if !empty(PKG_OPTIONS:Mremote) +PLIST.remote= yes +PDNS_MODULES+= remote +.endif + +.if !empty(PKG_OPTIONS:Msqlite) +PDNS_MODULES+= gsqlite3 +PLIST.sqlite= yes +.include "../../databases/sqlite3/buildlink3.mk" +.endif + +.if !empty(PKG_OPTIONS:Mtools) +CONFIGURE_ARGS+= --enable-tools +PLIST.tools= yes +.endif diff --git a/net/powerdns/patches/patch-aa b/net/powerdns/patches/patch-aa index e6e9b41a7eb..08a5c8ae5a8 100644 --- a/net/powerdns/patches/patch-aa +++ b/net/powerdns/patches/patch-aa @@ -1,14 +1,20 @@ -$NetBSD: patch-aa,v 1.3 2012/01/13 12:12:48 ghen Exp $ +$NetBSD: patch-aa,v 1.4 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/Makefile.in.orig 2012-01-05 14:27:41.000000000 +0000 +Installation destination for example config file. +--- pdns/Makefile.in.orig 2014-10-30 10:18:39.000000000 +0000 +++ pdns/Makefile.in -@@ -1012,15 +1012,15 @@ clean-libtool: +@@ -1627,18 +1627,18 @@ clean-libtool: -rm -rf .libs _libs install-sysconfDATA: $(sysconf_DATA) @$(NORMAL_INSTALL) -- test -z "$(sysconfdir)" || $(MKDIR_P) "$(DESTDIR)$(sysconfdir)" -+ test -z "$(EGDIR)" || $(MKDIR_P) "$(DESTDIR)$(EGDIR)" - @list='$(sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \ +- @list='$(sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \ ++ @list='$(sysconf_DATA)'; test -n "$(EGDIR)" || list=; \ + if test -n "$$list"; then \ +- echo " $(MKDIR_P) '$(DESTDIR)$(sysconfdir)'"; \ +- $(MKDIR_P) "$(DESTDIR)$(sysconfdir)" || exit 1; \ ++ echo " $(MKDIR_P) '$(DESTDIR)$(EGDIR)'"; \ ++ $(MKDIR_P) "$(DESTDIR)$(EGDIR)" || exit 1; \ + fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ diff --git a/net/powerdns/patches/patch-ab b/net/powerdns/patches/patch-ab index 81c1247bb7a..7ac7c7a28ec 100644 --- a/net/powerdns/patches/patch-ab +++ b/net/powerdns/patches/patch-ab @@ -1,8 +1,9 @@ -$NetBSD: patch-ab,v 1.3 2011/11/23 23:32:17 joerg Exp $ +$NetBSD: patch-ab,v 1.4 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/pdns.conf-dist.orig 2007-04-21 13:56:36.000000000 +0000 +Default paths. +--- pdns/pdns.conf-dist.orig 2014-10-28 10:41:09.000000000 +0000 +++ pdns/pdns.conf-dist -@@ -27,7 +27,7 @@ +@@ -52,7 +52,7 @@ ################################# # config-dir Location of configuration directory (pdns.conf) # @@ -11,12 +12,12 @@ $NetBSD: patch-ab,v 1.3 2011/11/23 23:32:17 joerg Exp $ ################################# # config-name Name of this virtual configuration - will rename the binary image -@@ -157,7 +157,7 @@ +@@ -287,7 +287,7 @@ ################################# # module-dir Default directory for modules # --# module-dir=/usr/local/lib +-# module-dir=/usr/local/lib/pdns +# module-dir=@PREFIX@/lib/pdns ################################# - # negquery-cache-ttl Seconds to store packets in the PacketCache + # negquery-cache-ttl Seconds to store negative query results in the QueryCache diff --git a/net/powerdns/patches/patch-configure b/net/powerdns/patches/patch-configure index da4abf37624..08e1b224b27 100644 --- a/net/powerdns/patches/patch-configure +++ b/net/powerdns/patches/patch-configure @@ -1,13 +1,45 @@ -$NetBSD: patch-configure,v 1.1 2012/01/23 15:11:54 ghen Exp $ +$NetBSD: patch-configure,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- configure.orig 2012-01-23 14:16:18.745785316 +0000 +Portability. +--- configure.orig 2014-10-30 10:18:31.000000000 +0000 +++ configure -@@ -16867,7 +16867,7 @@ do - done - modulelibs="$modulelibs `cat $srcdir/modules/${a}backend/OBJECTLIBS`" - -- if test ${a} == "gpgsql"; then -+ if test ${a} = "gpgsql"; then - case "$host_os" in - freebsd*) - ;; +@@ -19403,7 +19403,7 @@ fi + if test "x$MYSQL_config_check" != "xskip"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mysql_config" >&5 + $as_echo_n "checking for mysql_config... " >&6; } +- if test "x$MYSQL_config_check" == "x"; then ++ if test "x$MYSQL_config_check" = "x"; then + # check if it's in path + for m in /bin /usr/bin /usr/local/bin /opt/csw/bin; do + if test -x $m/mysql_config; then +@@ -19412,7 +19412,7 @@ $as_echo_n "checking for mysql_config... + fi + done + +- if test "x$MYSQL_config" == "x"; then ++ if test "x$MYSQL_config" = "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 + $as_echo "not found" >&6; } + else +@@ -19518,7 +19518,7 @@ fi + # Check whether --with-pgsql-config was given. + if test "${with_pgsql_config+set}" = set; then : + withval=$with_pgsql_config; PGSQL_pg_config="$withval" +- if test "x$PGSQL_pg_config" == "xyes" || test ! -x "$PGSQL_pg_config"; then ++ if test "x$PGSQL_pg_config" = "xyes" || test ! -x "$PGSQL_pg_config"; then + as_fn_error $? "--with-pgsql-config must provide a valid path to pg_config executable" "$LINENO" 5 + fi + +@@ -19568,10 +19568,10 @@ fi + + + if test "x$PGSQL_pg_config" != "x"; then +- if test "x$PGSQL_lib_check" == "x"; then ++ if test "x$PGSQL_lib_check" = "x"; then + PGSQL_lib_check=$($PGSQL_pg_config --libdir) + fi +- if test "x$PGSQL_inc_check" == "x"; then ++ if test "x$PGSQL_inc_check" = "x"; then + PGSQL_inc_check=$($PGSQL_pg_config --includedir) + fi + PGSQL_CFLAGS= diff --git a/net/powerdns/patches/patch-modules_luabackend_luabackend.hh b/net/powerdns/patches/patch-modules_luabackend_luabackend.hh new file mode 100644 index 00000000000..7ea743214fb --- /dev/null +++ b/net/powerdns/patches/patch-modules_luabackend_luabackend.hh @@ -0,0 +1,15 @@ +$NetBSD: patch-modules_luabackend_luabackend.hh,v 1.1 2014/12/10 14:50:09 fhajny Exp $ + +u_int32_t not defined on SunOS. +--- modules/luabackend/luabackend.hh.orig 2014-02-04 11:33:04.000000000 +0000 ++++ modules/luabackend/luabackend.hh +@@ -17,6 +17,9 @@ using std::string; + + //#undef L + ++#ifdef __sun ++typedef uint32_t u_int32_t; ++#endif + + + class LUAException { diff --git a/net/powerdns/patches/patch-modules_pipebackend_pipebackend.cc b/net/powerdns/patches/patch-modules_pipebackend_pipebackend.cc index 060c0478139..e46407e031f 100644 --- a/net/powerdns/patches/patch-modules_pipebackend_pipebackend.cc +++ b/net/powerdns/patches/patch-modules_pipebackend_pipebackend.cc @@ -1,8 +1,9 @@ -$NetBSD: patch-modules_pipebackend_pipebackend.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-modules_pipebackend_pipebackend.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- modules/pipebackend/pipebackend.cc.orig 2013-05-09 15:20:34.000000000 +0000 +Resolve boost symbol ambiguity. +--- modules/pipebackend/pipebackend.cc.orig 2014-10-30 10:18:22.000000000 +0000 +++ modules/pipebackend/pipebackend.cc -@@ -91,7 +91,7 @@ PipeBackend::PipeBackend(const string &s +@@ -92,7 +92,7 @@ PipeBackend::PipeBackend(const string &s signal(SIGCHLD, SIG_IGN); setArgPrefix("pipe"+suffix); try { @@ -10,4 +11,4 @@ $NetBSD: patch-modules_pipebackend_pipebackend.cc,v 1.1 2013/05/09 20:06:53 joer + d_coproc=boost::shared_ptr<CoWrapper>(new CoWrapper(getArg("command"), getArgAsNum("timeout"))); d_regex=getArg("regex").empty() ? 0 : new Regex(getArg("regex")); d_regexstr=getArg("regex"); - } + d_abiVersion = ::arg().asNum("pipebackend-abi-version"); diff --git a/net/powerdns/patches/patch-modules_pipebackend_pipebackend.hh b/net/powerdns/patches/patch-modules_pipebackend_pipebackend.hh index 3729122cfb4..970254250ec 100644 --- a/net/powerdns/patches/patch-modules_pipebackend_pipebackend.hh +++ b/net/powerdns/patches/patch-modules_pipebackend_pipebackend.hh @@ -1,8 +1,9 @@ -$NetBSD: patch-modules_pipebackend_pipebackend.hh,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-modules_pipebackend_pipebackend.hh,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- modules/pipebackend/pipebackend.hh.orig 2013-05-09 15:20:14.000000000 +0000 +Resolve boost symbol ambiguity. +--- modules/pipebackend/pipebackend.hh.orig 2014-06-03 07:42:02.000000000 +0000 +++ modules/pipebackend/pipebackend.hh -@@ -68,7 +68,7 @@ public: +@@ -44,7 +44,7 @@ public: static DNSBackend *maker(); private: diff --git a/net/powerdns/patches/patch-pdns_aes_brg_endian.h b/net/powerdns/patches/patch-pdns_aes_brg_endian.h deleted file mode 100644 index 2008f782aaa..00000000000 --- a/net/powerdns/patches/patch-pdns_aes_brg_endian.h +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-pdns_aes_brg_endian.h,v 1.1 2012/05/20 19:37:49 marino Exp $ - ---- pdns/aes/brg_endian.h.orig 2012-01-05 13:54:50.000000000 +0000 -+++ pdns/aes/brg_endian.h -@@ -34,7 +34,8 @@ - /* Include files where endian defines and byteswap functions may reside */
- #if defined( __sun )
- # include <sys/isa_defs.h>
--#elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) || defined( __NetBSD__ )
-+#elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) \
-+ || defined( __NetBSD__ ) || defined(__DragonFly__)
- # include <sys/endian.h>
- #elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \
- defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ )
diff --git a/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.cc b/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.cc deleted file mode 100644 index 032014353b8..00000000000 --- a/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.cc +++ /dev/null @@ -1,248 +0,0 @@ -$NetBSD: patch-pdns_backends_bind_bindbackend2.cc,v 1.2 2013/05/09 20:06:53 joerg Exp $ - -Limit inclusion of boost headers to only those necessary to avoid conflicting -types errors on Solaris. - ---- pdns/backends/bind/bindbackend2.cc.orig 2012-01-05 13:54:51.000000000 +0000 -+++ pdns/backends/bind/bindbackend2.cc -@@ -26,8 +26,8 @@ - #include <fstream> - #include <fcntl.h> - #include <sstream> --#include <boost/bind.hpp> --#include <boost/algorithm/string.hpp> -+#include <boost/algorithm/string/erase.hpp> -+#include <boost/algorithm/string/trim.hpp> - using namespace std; - - #include "dns.hh" -@@ -51,15 +51,15 @@ using namespace std; - */ - - // this map contains BB2DomainInfo structs, each of which contains a *pointer* to domain data --shared_ptr<Bind2Backend::State> Bind2Backend::s_state; -+boost::shared_ptr<Bind2Backend::State> Bind2Backend::s_state; - pthread_mutex_t Bind2Backend::s_state_swap_lock=PTHREAD_MUTEX_INITIALIZER; - - - /* the model is that all our state hides in s_state. This State instance consists of the id_zone_map, which contains all our zone information, indexed by id. - Then there is the name_id_map, which allows us to map a query to a zone id. - -- The s_state is never written to, and it is a reference counted shared_ptr. Any function which needs to access the state -- should do so by making a shared_ptr copy of it, and do all its work on that copy. -+ The s_state is never written to, and it is a reference counted boost::shared_ptr. Any function which needs to access the state -+ should do so by making a boost::shared_ptr copy of it, and do all its work on that copy. - - When I said s_state is never written to, I lied. No elements are ever added to it, or removed from it. - Its values however may be changed, but not the keys. -@@ -67,8 +67,8 @@ pthread_mutex_t Bind2Backend::s_state_sw - When it is necessary to change the State, a deep copy is made, which is changed. Afterwards, - the s_state pointer is made to point to the new State. - -- Anybody who is currently accessing the original holds a reference counted handle (shared_ptr) to it, which means it will stay around -- To save memory, we hold the records as a shared_ptr as well. -+ Anybody who is currently accessing the original holds a reference counted handle (boost::shared_ptr) to it, which means it will stay around -+ To save memory, we hold the records as a boost::shared_ptr as well. - - Changes made to s_state directly should take the s_state_lock, so as to prevent writing to a stale copy. - */ -@@ -140,9 +140,9 @@ void Bind2Backend::setFresh(uint32_t dom - s_state->id_zone_map[domain_id].d_lastcheck=time(0); - } - --shared_ptr<Bind2Backend::State> Bind2Backend::getState() -+boost::shared_ptr<Bind2Backend::State> Bind2Backend::getState() - { -- shared_ptr<State> ret; -+ boost::shared_ptr<State> ret; - { - Lock l(&s_state_swap_lock); - ret = s_state; // is only read from -@@ -153,7 +153,7 @@ shared_ptr<Bind2Backend::State> Bind2Bac - - bool Bind2Backend::startTransaction(const string &qname, int id) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - const BB2DomainInfo &bbd=state->id_zone_map[d_transaction_id=id]; - -@@ -177,7 +177,7 @@ bool Bind2Backend::commitTransaction() - delete d_of; - d_of=0; - -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - // this might fail if s_state was cycled during the AXFR - if(rename(d_transaction_tmpname.c_str(), state->id_zone_map[d_transaction_id].d_filename.c_str())<0) -@@ -206,7 +206,7 @@ bool Bind2Backend::feedRecord(const DNSR - { - string qname=r.qname; - -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - string domain = state->id_zone_map[d_transaction_id].d_name; - - if(!stripDomainSuffix(&qname,domain)) -@@ -239,7 +239,7 @@ bool Bind2Backend::feedRecord(const DNSR - void Bind2Backend::getUpdatedMasters(vector<DomainInfo> *changedDomains) - { - SOAData soadata; -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - for(id_zone_map_t::const_iterator i = state->id_zone_map.begin(); i != state->id_zone_map.end() ; ++i) { - if(!i->second.d_masters.empty()) -@@ -268,7 +268,7 @@ void Bind2Backend::getUpdatedMasters(vec - - void Bind2Backend::getUnfreshSlaveInfos(vector<DomainInfo> *unfreshDomains) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - for(id_zone_map_t::const_iterator i = state->id_zone_map.begin(); i != state->id_zone_map.end() ; ++i) { - if(i->second.d_masters.empty()) - continue; -@@ -296,7 +296,7 @@ void Bind2Backend::getUnfreshSlaveInfos( - - bool Bind2Backend::getDomainInfo(const string &domain, DomainInfo &di) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - for(id_zone_map_t::const_iterator i = state->id_zone_map.begin(); i != state->id_zone_map.end() ; ++i) { - if(i->second.d_name==domain) { - di.id=i->first; -@@ -341,7 +341,7 @@ static string canonic(string ret) - /** THIS IS AN INTERNAL FUNCTION! It does moadnsparser prio impedence matching - This function adds a record to a domain with a certain id. - Much of the complication is due to the efforts to benefit from std::string reference counting copy on write semantics */ --void Bind2Backend::insert(shared_ptr<State> stage, int id, const string &qnameu, const QType &qtype, const string &content, int ttl=300, int prio=25) -+void Bind2Backend::insert(boost::shared_ptr<State> stage, int id, const string &qnameu, const QType &qtype, const string &content, int ttl=300, int prio=25) - { - BB2DomainInfo bb2 = stage->id_zone_map[id]; - Bind2DNSRecord bdr; -@@ -393,7 +393,7 @@ void Bind2Backend::reload() - - string Bind2Backend::DLReloadNowHandler(const vector<string>&parts, Utility::pid_t ppid) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - ostringstream ret; - - for(vector<string>::const_iterator i=parts.begin()+1;i<parts.end();++i) { -@@ -415,7 +415,7 @@ string Bind2Backend::DLReloadNowHandler( - string Bind2Backend::DLDomStatusHandler(const vector<string>&parts, Utility::pid_t ppid) - { - ostringstream ret; -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - if(parts.size() > 1) { - for(vector<string>::const_iterator i=parts.begin()+1;i<parts.end();++i) { -@@ -440,7 +440,7 @@ string Bind2Backend::DLDomStatusHandler( - - string Bind2Backend::DLListRejectsHandler(const vector<string>&parts, Utility::pid_t ppid) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - ostringstream ret; - for(id_zone_map_t::iterator j = state->id_zone_map.begin(); j != state->id_zone_map.end(); ++j) -@@ -464,7 +464,7 @@ Bind2Backend::Bind2Backend(const string - return; - } - s_first=0; -- s_state = shared_ptr<State>(new State); -+ s_state = boost::shared_ptr<State>(new State); - loadConfig(); - - extern DynListener *dl; -@@ -504,7 +504,7 @@ void Bind2Backend::loadConfig(string* st - - static int domain_id=1; - -- shared_ptr<State> staging = shared_ptr<State>(new State); -+ boost::shared_ptr<State> staging = boost::shared_ptr<State>(new State); - - if(!getArg("config").empty()) { - BindParser BP; -@@ -555,7 +555,7 @@ void Bind2Backend::loadConfig(string* st - bbd->d_id=domain_id++; - - // this isn't necessary, we do this on the actual load -- // bbd->d_records=shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); -+ // bbd->d_records=boost::shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); - - bbd->setCheckInterval(getArgAsNum("check-interval")); - bbd->d_lastnotified=0; -@@ -578,7 +578,7 @@ void Bind2Backend::loadConfig(string* st - - try { - // we need to allocate a new vector so we don't kill the original, which is still in use! -- bbd->d_records=shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); -+ bbd->d_records=boost::shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); - - ZoneParserTNG zpt(i->filename, i->name, BP.getDirectory()); - DNSResourceRecord rr; -@@ -681,7 +681,7 @@ void Bind2Backend::loadConfig(string* st - void Bind2Backend::nukeZoneRecords(BB2DomainInfo *bbd) - { - bbd->d_loaded=0; // block further access -- bbd->d_records = shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); -+ bbd->d_records = boost::shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); - } - - -@@ -689,14 +689,14 @@ void Bind2Backend::queueReload(BB2Domain - { - Lock l(&s_state_lock); - -- shared_ptr<State> staging(new State); -+ boost::shared_ptr<State> staging(new State); - - // we reload *now* for the time being - - try { - nukeZoneRecords(bbd); // ? do we need this? - staging->id_zone_map[bbd->d_id]=s_state->id_zone_map[bbd->d_id]; -- staging->id_zone_map[bbd->d_id].d_records=shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); // nuke it -+ staging->id_zone_map[bbd->d_id].d_records=boost::shared_ptr<vector<Bind2DNSRecord> > (new vector<Bind2DNSRecord>); // nuke it - - ZoneParserTNG zpt(bbd->d_filename, bbd->d_name, s_binddirectory); - DNSResourceRecord rr; -@@ -740,7 +740,7 @@ void Bind2Backend::lookup(const QType &q - if(mustlog) - L<<Logger::Warning<<"Lookup for '"<<qtype.getName()<<"' of '"<<domain<<"'"<<endl; - -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - - name_id_map_t::const_iterator iditer; - while((iditer=state->name_id_map.find(domain)) == state->name_id_map.end() && chopOff(domain)) -@@ -873,7 +873,7 @@ bool Bind2Backend::handle::get_normal(DN - - bool Bind2Backend::list(const string &target, int id) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - if(!state->id_zone_map.count(id)) - return false; - -@@ -908,7 +908,7 @@ bool Bind2Backend::handle::get_list(DNSR - - bool Bind2Backend::isMaster(const string &name, const string &ip) - { -- shared_ptr<State> state = getState(); -+ boost::shared_ptr<State> state = getState(); - for(id_zone_map_t::iterator j=state->id_zone_map.begin();j!=state->id_zone_map.end();++j) { - if(j->second.d_name==name) { - for(vector<string>::const_iterator iter = j->second.d_masters.begin(); iter != j->second.d_masters.end(); ++iter) -@@ -992,7 +992,7 @@ bool Bind2Backend::createSlaveDomain(con - - BB2DomainInfo &bbd = s_state->id_zone_map[newid]; - -- bbd.d_records = shared_ptr<vector<Bind2DNSRecord> >(new vector<Bind2DNSRecord>); -+ bbd.d_records = boost::shared_ptr<vector<Bind2DNSRecord> >(new vector<Bind2DNSRecord>); - bbd.d_name = domain; - bbd.setCheckInterval(getArgAsNum("check-interval")); - bbd.d_masters.push_back(ip); diff --git a/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.hh b/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.hh deleted file mode 100644 index 576d6eedd8d..00000000000 --- a/net/powerdns/patches/patch-pdns_backends_bind_bindbackend2.hh +++ /dev/null @@ -1,44 +0,0 @@ -$NetBSD: patch-pdns_backends_bind_bindbackend2.hh,v 1.1 2013/05/09 20:06:53 joerg Exp $ - ---- pdns/backends/bind/bindbackend2.hh.orig 2013-05-09 15:23:01.000000000 +0000 -+++ pdns/backends/bind/bindbackend2.hh -@@ -90,7 +90,7 @@ public: - //! configure how often this domain should be checked for changes (on disk) - void setCheckInterval(time_t seconds); - -- shared_ptr<vector<Bind2DNSRecord> > d_records; //!< the actual records belonging to this domain -+ boost::shared_ptr<vector<Bind2DNSRecord> > d_records; //!< the actual records belonging to this domain - private: - time_t getCtime(); - time_t d_checkinterval; -@@ -130,7 +130,7 @@ public: - id_zone_map_t id_zone_map; - }; - -- static void insert(shared_ptr<State> stage, int id, const string &qname, const QType &qtype, const string &content, int ttl, int prio); -+ static void insert(boost::shared_ptr<State> stage, int id, const string &qname, const QType &qtype, const string &content, int ttl, int prio); - void rediscover(string *status=0); - - bool isMaster(const string &name, const string &ip); -@@ -153,7 +153,7 @@ private: - - handle(); - -- shared_ptr<vector<Bind2DNSRecord> > d_records; -+ boost::shared_ptr<vector<Bind2DNSRecord> > d_records; - vector<Bind2DNSRecord>::const_iterator d_iter, d_end_iter; - - vector<Bind2DNSRecord>::const_iterator d_qname_iter; -@@ -176,10 +176,10 @@ private: - }; - - -- static shared_ptr<State> s_state; -+ static boost::shared_ptr<State> s_state; - static pthread_mutex_t s_state_lock; //!< lock protecting ??? - static pthread_mutex_t s_state_swap_lock; //!< lock protecting ??? -- static shared_ptr<State> getState(); -+ static boost::shared_ptr<State> getState(); - - static int s_first; //!< this is raised on construction to prevent multiple instances of us being generated - diff --git a/net/powerdns/patches/patch-pdns_botan18signers.cc b/net/powerdns/patches/patch-pdns_botan18signers.cc new file mode 100644 index 00000000000..abec876b76f --- /dev/null +++ b/net/powerdns/patches/patch-pdns_botan18signers.cc @@ -0,0 +1,43 @@ +$NetBSD: patch-pdns_botan18signers.cc,v 1.1 2014/12/10 14:50:09 fhajny Exp $ + +Resolve boost symbol ambiguity. +--- pdns/botan18signers.cc.orig 2013-04-26 19:54:34.000000000 +0000 ++++ pdns/botan18signers.cc +@@ -36,8 +36,8 @@ public: + + private: + static EC_Domain_Params getECParams(unsigned int algorithm); +- shared_ptr<ECDSA_PrivateKey> d_key; +- shared_ptr<ECDSA_PublicKey> d_pubkey; ++ boost::shared_ptr<ECDSA_PrivateKey> d_key; ++ boost::shared_ptr<ECDSA_PublicKey> d_pubkey; + }; + + EC_Domain_Params ECDSADNSCryptoKeyEngine::getECParams(unsigned int algorithm) +@@ -56,7 +56,7 @@ void ECDSADNSCryptoKeyEngine::create(uns + if(bits != 256 && bits != 384) { + throw runtime_error("Unknown key length of "+lexical_cast<string>(bits)+" bits requested from ECDSA class"); + } +- d_key = shared_ptr<ECDSA_PrivateKey>(new ECDSA_PrivateKey(rng, getECParams((bits == 256) ? 13 : 14))); ++ d_key = boost::shared_ptr<ECDSA_PrivateKey>(new ECDSA_PrivateKey(rng, getECParams((bits == 256) ? 13 : 14))); + + // PKCS8_Encoder* pk8e= d_key->pkcs8_encoder(); + // MemoryVector<byte> getbits=pk8e->key_bits(); +@@ -113,7 +113,7 @@ void ECDSADNSCryptoKeyEngine::fromISCMap + + EC_Domain_Params params=getECParams(drc.d_algorithm); + +- d_key=shared_ptr<ECDSA_PrivateKey>(new ECDSA_PrivateKey); ++ d_key=boost::shared_ptr<ECDSA_PrivateKey>(new ECDSA_PrivateKey); + AutoSeeded_RNG rng; + + SecureVector<byte> octstr_secret = BigInt::encode_1363(bigint, getBits()/8); +@@ -168,7 +168,7 @@ void ECDSADNSCryptoKeyEngine::fromPublic + GFpElement gfpx(params.get_curve().get_ptr_mod(), x); + GFpElement gfpy(params.get_curve().get_ptr_mod(), y); + PointGFp point(params.get_curve(), gfpx,gfpy); +- d_pubkey = shared_ptr<ECDSA_PublicKey>(new ECDSA_PublicKey(params, point)); ++ d_pubkey = boost::shared_ptr<ECDSA_PublicKey>(new ECDSA_PublicKey(params, point)); + d_key.reset(); + } + diff --git a/net/powerdns/patches/patch-pdns_dns.hh b/net/powerdns/patches/patch-pdns_dns.hh index 5327cd49490..6b819b72bb8 100644 --- a/net/powerdns/patches/patch-pdns_dns.hh +++ b/net/powerdns/patches/patch-pdns_dns.hh @@ -1,13 +1,14 @@ -$NetBSD: patch-pdns_dns.hh,v 1.1 2012/05/20 19:37:49 marino Exp $ +$NetBSD: patch-pdns_dns.hh,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/dns.hh.orig 2012-05-20 19:14:49.778625000 +0000 +Add DragonFly support. +--- pdns/dns.hh.orig 2014-10-30 10:18:22.000000000 +0000 +++ pdns/dns.hh -@@ -173,7 +173,7 @@ enum { - #ifdef WIN32 - #define BYTE_ORDER 1 - #define LITTLE_ENDIAN 1 --#elif __FreeBSD__ || __APPLE__ -+#elif defined(__FreeBSD__) || defined(__APPLE__) || defined(__DragonFly__) +@@ -207,7 +207,7 @@ enum { + ns_t_any = 255, /* Wildcard match. */ + }; + +-#if __FreeBSD__ || __APPLE__ || __OpenBSD__ || defined(__FreeBSD_kernel__) ++#if __FreeBSD__ || __APPLE__ || __OpenBSD__ || __DragonFly__ || defined(__FreeBSD_kernel__) #include <machine/endian.h> - #elif __linux__ + #elif __linux__ || __GNU__ # include <endian.h> diff --git a/net/powerdns/patches/patch-pdns_dnspacket.cc b/net/powerdns/patches/patch-pdns_dnspacket.cc index eada0abfe91..dbceb1bf85c 100644 --- a/net/powerdns/patches/patch-pdns_dnspacket.cc +++ b/net/powerdns/patches/patch-pdns_dnspacket.cc @@ -1,13 +1,14 @@ -$NetBSD: patch-pdns_dnspacket.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_dnspacket.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/dnspacket.cc.orig 2013-05-09 15:25:33.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/dnspacket.cc.orig 2014-10-30 10:18:22.000000000 +0000 +++ pdns/dnspacket.cc -@@ -335,7 +335,7 @@ void DNSPacket::wrapup(void) - } - if(pos->content.empty()) // empty contents confuse the MOADNS setup - pos->content="."; -- shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(pos->qtype.getCode(), 1, pos->content)); -+ boost::shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(pos->qtype.getCode(), 1, pos->content)); - drc->toPacket(pw); - } - if(!opts.empty()) +@@ -312,7 +312,7 @@ void DNSPacket::wrapup() + pos->content="."; + + pw.startRecord(pos->qname, pos->qtype.getCode(), pos->ttl, pos->qclass, (DNSPacketWriter::Place)pos->d_place); +- shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(pos->qtype.getCode(), 1, pos->content)); ++ boost::shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(pos->qtype.getCode(), 1, pos->content)); + drc->toPacket(pw); + if(pw.size() + 20U > (d_tcp ? 65535 : getMaxReplyLen())) { // 20 = room for EDNS0 + pw.rollback(); diff --git a/net/powerdns/patches/patch-pdns_dnsparser.cc b/net/powerdns/patches/patch-pdns_dnsparser.cc index fa7fbe48b2b..7876541dec0 100644 --- a/net/powerdns/patches/patch-pdns_dnsparser.cc +++ b/net/powerdns/patches/patch-pdns_dnsparser.cc @@ -1,17 +1,18 @@ -$NetBSD: patch-pdns_dnsparser.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_dnsparser.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/dnsparser.cc.orig 2013-05-09 15:25:35.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/dnsparser.cc.orig 2014-08-29 14:33:20.000000000 +0000 +++ pdns/dnsparser.cc -@@ -88,7 +88,7 @@ static const string EncodeDNSLabel(const - return ret; - } +@@ -109,7 +109,7 @@ static const string EncodeDNSLabel(const + } + -shared_ptr<DNSRecordContent> DNSRecordContent::unserialize(const string& qname, uint16_t qtype, const string& serialized) +boost::shared_ptr<DNSRecordContent> DNSRecordContent::unserialize(const string& qname, uint16_t qtype, const string& serialized) { dnsheader dnsheader; memset(&dnsheader, 0, sizeof(dnsheader)); -@@ -122,7 +122,7 @@ shared_ptr<DNSRecordContent> DNSRecordCo +@@ -143,7 +143,7 @@ shared_ptr<DNSRecordContent> DNSRecordCo memcpy(&packet[pos], serialized.c_str(), serialized.size()); pos+=(uint16_t)serialized.size(); MOADNSParser mdp((char*)&*packet.begin(), (unsigned int)packet.size()); diff --git a/net/powerdns/patches/patch-pdns_dnsparser.hh b/net/powerdns/patches/patch-pdns_dnsparser.hh index c477b30895e..969028280b4 100644 --- a/net/powerdns/patches/patch-pdns_dnsparser.hh +++ b/net/powerdns/patches/patch-pdns_dnsparser.hh @@ -1,8 +1,9 @@ -$NetBSD: patch-pdns_dnsparser.hh,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_dnsparser.hh,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/dnsparser.hh.orig 2013-05-09 15:25:37.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/dnsparser.hh.orig 2014-04-25 09:42:01.000000000 +0000 +++ pdns/dnsparser.hh -@@ -164,7 +164,7 @@ public: +@@ -183,7 +183,7 @@ public: return record; } @@ -11,7 +12,7 @@ $NetBSD: patch-pdns_dnsparser.hh,v 1.1 2013/05/09 20:06:53 joerg Exp $ void doRecordCheck(const struct DNSRecord&){} -@@ -291,9 +291,9 @@ public: +@@ -327,9 +327,9 @@ public: //! All answers contained in this packet answers_t d_answers; diff --git a/net/powerdns/patches/patch-pdns_dnspbench.cc b/net/powerdns/patches/patch-pdns_dnspbench.cc deleted file mode 100644 index 948c00feb2a..00000000000 --- a/net/powerdns/patches/patch-pdns_dnspbench.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-pdns_dnspbench.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ - ---- pdns/dnspbench.cc.orig 2013-05-09 15:25:39.000000000 +0000 -+++ pdns/dnspbench.cc -@@ -85,7 +85,7 @@ try - cerr<<"hexdump: "<<makeHexDump(record)<<"\n"; - // cerr<<"record: "<<record<<"\n"; - -- shared_ptr<DNSRecordContent> regen=DNSRecordContent::unserialize(argv[1], type, record); -+ boost::shared_ptr<DNSRecordContent> regen=DNSRecordContent::unserialize(argv[1], type, record); - cerr<<"Out: "<<argv[1]<<" IN "<<argv[2]<<" "<<regen->getZoneRepresentation()<<endl; - #endif - } diff --git a/net/powerdns/patches/patch-pdns_dnsscope.cc b/net/powerdns/patches/patch-pdns_dnsscope.cc new file mode 100644 index 00000000000..c9ba522a955 --- /dev/null +++ b/net/powerdns/patches/patch-pdns_dnsscope.cc @@ -0,0 +1,16 @@ +$NetBSD: patch-pdns_dnsscope.cc,v 1.1 2014/12/10 14:50:09 fhajny Exp $ + +IP_OFFMASK not defined on SunOS. +--- pdns/dnsscope.cc.orig 2014-06-26 11:22:02.000000000 +0000 ++++ pdns/dnsscope.cc +@@ -16,6 +16,10 @@ + #include "namespaces.hh" + #include <deque> + ++#ifndef IP_OFFMASK ++# define IP_OFFMASK 0x1fff ++#endif ++ + namespace po = boost::program_options; + po::variables_map g_vm; + diff --git a/net/powerdns/patches/patch-pdns_dynloader.cc b/net/powerdns/patches/patch-pdns_dynloader.cc index 49522623386..09831d86bec 100644 --- a/net/powerdns/patches/patch-pdns_dynloader.cc +++ b/net/powerdns/patches/patch-pdns_dynloader.cc @@ -1,8 +1,9 @@ -$NetBSD: patch-pdns_dynloader.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_dynloader.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/dynloader.cc.orig 2013-05-09 15:25:44.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/dynloader.cc.orig 2014-04-29 11:02:00.000000000 +0000 +++ pdns/dynloader.cc -@@ -95,9 +95,9 @@ int main(int argc, char **argv) +@@ -103,9 +103,9 @@ int main(int argc, char **argv) try { string command=commands[0]; @@ -14,8 +15,8 @@ $NetBSD: patch-pdns_dynloader.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ else { uint16_t port; try { -@@ -108,7 +108,7 @@ int main(int argc, char **argv) - exit(99); +@@ -116,7 +116,7 @@ int main(int argc, char **argv) + exit(99); } - D=shared_ptr<DynMessenger>(new DynMessenger(ComboAddress(::arg()["remote-address"], port), ::arg()["secret"])); diff --git a/net/powerdns/patches/patch-pdns_dynmessenger.cc b/net/powerdns/patches/patch-pdns_dynmessenger.cc deleted file mode 100644 index 55885b172b3..00000000000 --- a/net/powerdns/patches/patch-pdns_dynmessenger.cc +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-pdns_dynmessenger.cc,v 1.1 2011/11/23 23:32:17 joerg Exp $ - ---- pdns/dynmessenger.cc.orig 2011-11-23 15:51:02.000000000 +0000 -+++ pdns/dynmessenger.cc -@@ -23,6 +23,7 @@ - #include <iostream> - #include <sys/types.h> - #include <sys/stat.h> -+#include <stdlib.h> - - DynMessenger::DynMessenger(const string &localdir, const string &fname) - { diff --git a/net/powerdns/patches/patch-pdns_ext_nedmalloc_malloc.c b/net/powerdns/patches/patch-pdns_ext_nedmalloc_malloc.c deleted file mode 100644 index 729da5993ad..00000000000 --- a/net/powerdns/patches/patch-pdns_ext_nedmalloc_malloc.c +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-pdns_ext_nedmalloc_malloc.c,v 1.1 2012/05/20 19:37:49 marino Exp $ - ---- pdns/ext/nedmalloc/malloc.c.orig 2012-05-20 19:21:21.401620000 +0000 -+++ pdns/ext/nedmalloc/malloc.c -@@ -1213,7 +1213,8 @@ int mspace_mallopt(int, int); - #ifndef LACKS_UNISTD_H
- #include <unistd.h> /* for sbrk */
- #else /* LACKS_UNISTD_H */
--#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)
-+#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) \
-+ && !defined(__DragonFly__)
- extern void* sbrk(ptrdiff_t);
- #endif /* FreeBSD etc */
- #endif /* LACKS_UNISTD_H */
diff --git a/net/powerdns/patches/patch-pdns_htimer.cc b/net/powerdns/patches/patch-pdns_htimer.cc index 5666d426d7d..11ae737d74d 100644 --- a/net/powerdns/patches/patch-pdns_htimer.cc +++ b/net/powerdns/patches/patch-pdns_htimer.cc @@ -1,8 +1,9 @@ -$NetBSD: patch-pdns_htimer.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_htimer.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/htimer.cc.orig 2013-05-09 15:25:46.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/htimer.cc.orig 2013-12-17 17:42:51.000000000 +0000 +++ pdns/htimer.cc -@@ -132,7 +132,7 @@ int main() +@@ -128,7 +128,7 @@ int main() HTimerSentinel hts=htloop.getSentinel(); for(int i=0; i < 1000; ++i) { diff --git a/net/powerdns/patches/patch-pdns_nameserver.cc b/net/powerdns/patches/patch-pdns_nameserver.cc deleted file mode 100644 index 2a70fe47cf2..00000000000 --- a/net/powerdns/patches/patch-pdns_nameserver.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-pdns_nameserver.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ - ---- pdns/nameserver.cc.orig 2013-05-09 15:25:50.000000000 +0000 -+++ pdns/nameserver.cc -@@ -181,7 +181,7 @@ void UDPNameserver::send(DNSPacket *p) - const char *buffer=p->getData(); - DLOG(L<<Logger::Notice<<"Sending a packet to "<< p->remote.toString() <<" ("<<p->len<<" octets)"<<endl); - if(p->len > p->getMaxReplyLen()) { -- shared_ptr<DNSPacket> sharedp(new DNSPacket(*p)); -+ boost::shared_ptr<DNSPacket> sharedp(new DNSPacket(*p)); - sharedp->truncate(p->getMaxReplyLen()); - buffer=sharedp->getData(); - if(sendto(sharedp->getSocket(),buffer,sharedp->len,0,(struct sockaddr *)(&sharedp->remote), sharedp->remote.getSocklen())<0) diff --git a/net/powerdns/patches/patch-pdns_packethandler.cc b/net/powerdns/patches/patch-pdns_packethandler.cc deleted file mode 100644 index 0c671d97cb3..00000000000 --- a/net/powerdns/patches/patch-pdns_packethandler.cc +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-pdns_packethandler.cc,v 1.1 2012/10/02 12:20:47 jperkin Exp $ - -Limit inclusion of boost headers to only those necessary to avoid conflicting -types errors on Solaris. - ---- pdns/packethandler.cc.orig 2012-01-05 13:54:51.000000000 +0000 -+++ pdns/packethandler.cc 2012-10-02 10:36:35.971513178 +0000 -@@ -19,7 +19,7 @@ - #include "utility.hh" - #include <string> - #include <sys/types.h> --#include <boost/algorithm/string.hpp> -+#include <boost/algorithm/string/predicate.hpp> - #include "dns.hh" - #include "dnsbackend.hh" - #include "ueberbackend.hh" diff --git a/net/powerdns/patches/patch-pdns_pdns_recursor.cc b/net/powerdns/patches/patch-pdns_pdns_recursor.cc index 14832a4a5a9..cd8d523762a 100644 --- a/net/powerdns/patches/patch-pdns_pdns_recursor.cc +++ b/net/powerdns/patches/patch-pdns_pdns_recursor.cc @@ -1,63 +1,103 @@ -$NetBSD: patch-pdns_pdns_recursor.cc,v 1.2 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_pdns_recursor.cc,v 1.3 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/pdns_recursor.cc.orig 2012-01-05 13:54:51.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/pdns_recursor.cc.orig 2014-10-30 10:18:22.000000000 +0000 +++ pdns/pdns_recursor.cc -@@ -67,10 +67,11 @@ StatBag S; - FDMultiplexer* g_fdm; - unsigned int g_maxTCPPerClient; +@@ -80,9 +80,9 @@ uint64_t g_latencyStatSize; bool g_logCommonErrors; --shared_ptr<PowerDNSLua> g_pdl; -+boost::shared_ptr<PowerDNSLua> g_pdl; - using namespace boost; + bool g_anyToTcp; + uint16_t g_udpTruncationThreshold; +-__thread shared_ptr<RecursorLua>* t_pdl; ++__thread boost::shared_ptr<RecursorLua>* t_pdl; + __thread RemoteKeeper* t_remotes; +-__thread shared_ptr<Regex>* t_traceRegex; ++__thread boost::shared_ptr<Regex>* t_traceRegex; --#ifdef __FreeBSD__ // see cvstrac ticket #26 -+// see cvstrac ticket #26 -+#if defined(__FreeBSD__) || defined(__DragonFly__) - #include <pthread.h> - #include <semaphore.h> - #endif -@@ -578,7 +579,7 @@ void startDoResolve(void *p) - IpToU32(i->content, &ip); - pw.xfr32BitInt(htonl(ip)); - } else { -- shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(i->qtype.getCode(), i->qclass, i->content)); -+ boost::shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(i->qtype.getCode(), i->qclass, i->content)); - drc->toPacket(pw); - } - if(!dc->d_tcp && pw.size() > maxudpsize) { -@@ -1553,7 +1554,7 @@ void parseAuthAndForwards() - if(!rfp) - throw AhuException("Error opening forward-zones-file '"+::arg()["forward-zones-file"]+"': "+stringerror()); + RecursorControlChannel s_rcc; // only active in thread 0 -- shared_ptr<FILE> fp=shared_ptr<FILE>(rfp, fclose); -+ boost::shared_ptr<FILE> fp=boost::shared_ptr<FILE>(rfp, fclose); +@@ -152,7 +152,7 @@ struct DNSComboWriter { + ComboAddress d_remote; + bool d_tcp; + int d_socket; +- shared_ptr<TCPConnection> d_tcpConnection; ++ boost::shared_ptr<TCPConnection> d_tcpConnection; + }; + + +@@ -606,7 +606,7 @@ void startDoResolve(void *p) + IpToU32(i->content, &ip); + pw.xfr32BitInt(htonl(ip)); + } else { +- shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(i->qtype.getCode(), i->qclass, i->content)); ++ boost::shared_ptr<DNSRecordContent> drc(DNSRecordContent::mastermake(i->qtype.getCode(), i->qclass, i->content)); + drc->toPacket(pw); + } + if(pw.size() > maxanswersize) { +@@ -748,7 +748,7 @@ void makeControlChannelSocket(int proces + + void handleRunningTCPQuestion(int fd, FDMultiplexer::funcparam_t& var) + { +- shared_ptr<TCPConnection> conn=any_cast<shared_ptr<TCPConnection> >(var); ++ boost::shared_ptr<TCPConnection> conn=any_cast<boost::shared_ptr<TCPConnection> >(var); + + if(conn->state==TCPConnection::BYTE0) { + int bytes=recv(conn->getFD(), conn->data, 2, 0); +@@ -852,7 +852,7 @@ void handleNewTCPQuestion(int fd, FDMult + } - char line[1024]; - int linenum=0; -@@ -1630,7 +1631,7 @@ string doReloadLuaScript(vector<string>: - try { - if(begin==end) { - if(!fname.empty()) -- g_pdl = shared_ptr<PowerDNSLua>(new PowerDNSLua(fname)); -+ g_pdl = boost::shared_ptr<PowerDNSLua>(new PowerDNSLua(fname)); - else - throw runtime_error("Asked to reload lua scripts, but no name passed and no default ('lua-dns-script') defined"); + Utility::setNonBlocking(newsock); +- shared_ptr<TCPConnection> tc(new TCPConnection(newsock, addr)); ++ boost::shared_ptr<TCPConnection> tc(new TCPConnection(newsock, addr)); + tc->state=TCPConnection::BYTE0; + + t_fdm->addReadFD(tc->getFD(), handleRunningTCPQuestion, tc); +@@ -1582,7 +1582,7 @@ string* doReloadLuaScript() + return new string("unloaded\n"); } -@@ -1642,7 +1643,7 @@ string doReloadLuaScript(vector<string>: - return "unloaded current lua script\n"; - } - else { -- g_pdl = shared_ptr<PowerDNSLua>(new PowerDNSLua(fname)); -+ g_pdl = boost::shared_ptr<PowerDNSLua>(new PowerDNSLua(fname)); - ::arg().set("lua-dns-script")=fname; - } + else { +- *t_pdl = shared_ptr<RecursorLua>(new RecursorLua(fname)); ++ *t_pdl = boost::shared_ptr<RecursorLua>(new RecursorLua(fname)); } -@@ -1766,7 +1767,7 @@ int serviceMain(int argc, char*argv[]) - + } + catch(std::exception& e) { +@@ -1610,7 +1610,7 @@ try + return new string("unset\n"); + } + else { +- (*t_traceRegex) = shared_ptr<Regex>(new Regex(newRegex)); ++ (*t_traceRegex) = boost::shared_ptr<Regex>(new Regex(newRegex)); + return new string("ok\n"); + } + } +@@ -1939,11 +1939,11 @@ try + + L<<Logger::Warning<<"Done priming cache with root hints"<<endl; + +- t_pdl = new shared_ptr<RecursorLua>(); ++ t_pdl = new boost::shared_ptr<RecursorLua>(); + try { if(!::arg()["lua-dns-script"].empty()) { -- g_pdl = shared_ptr<PowerDNSLua>(new PowerDNSLua(::arg()["lua-dns-script"])); -+ g_pdl = boost::shared_ptr<PowerDNSLua>(new PowerDNSLua(::arg()["lua-dns-script"])); +- *t_pdl = shared_ptr<RecursorLua>(new RecursorLua(::arg()["lua-dns-script"])); ++ *t_pdl = boost::shared_ptr<RecursorLua>(new RecursorLua(::arg()["lua-dns-script"])); L<<Logger::Warning<<"Loaded 'lua' script from '"<<::arg()["lua-dns-script"]<<"'"<<endl; } +@@ -1953,7 +1953,7 @@ try + exit(99); + } + +- t_traceRegex = new shared_ptr<Regex>(); ++ t_traceRegex = new boost::shared_ptr<Regex>(); + + + t_remotes = new RemoteKeeper(); +@@ -2011,7 +2011,7 @@ try + expired_t expired=t_fdm->getTimeouts(g_now); + + for(expired_t::iterator i=expired.begin() ; i != expired.end(); ++i) { +- shared_ptr<TCPConnection> conn=any_cast<shared_ptr<TCPConnection> >(i->second); ++ boost::shared_ptr<TCPConnection> conn=any_cast<boost::shared_ptr<TCPConnection> >(i->second); + if(g_logCommonErrors) + L<<Logger::Warning<<"Timeout from remote TCP client "<< conn->d_remote.toString() <<endl; + t_fdm->removeReadFD(i->first); diff --git a/net/powerdns/patches/patch-pdns_receiver.cc b/net/powerdns/patches/patch-pdns_receiver.cc index 4ffe24b6576..97221acaa89 100644 --- a/net/powerdns/patches/patch-pdns_receiver.cc +++ b/net/powerdns/patches/patch-pdns_receiver.cc @@ -1,11 +1,11 @@ -$NetBSD: patch-pdns_receiver.cc,v 1.1 2012/10/02 12:20:47 jperkin Exp $ +$NetBSD: patch-pdns_receiver.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ Limit inclusion of boost headers to only those necessary to avoid conflicting types errors on Solaris. ---- pdns/receiver.cc.orig 2012-01-05 13:54:51.000000000 +0000 -+++ pdns/receiver.cc 2012-10-02 10:37:52.894235670 +0000 -@@ -39,7 +39,7 @@ +--- pdns/receiver.cc.orig 2014-09-02 08:02:05.000000000 +0000 ++++ pdns/receiver.cc +@@ -42,7 +42,7 @@ #include <sys/mman.h> #include <fcntl.h> #include <fstream> diff --git a/net/powerdns/patches/patch-pdns_recursor__cache.cc b/net/powerdns/patches/patch-pdns_recursor__cache.cc index 20248355c22..39609656583 100644 --- a/net/powerdns/patches/patch-pdns_recursor__cache.cc +++ b/net/powerdns/patches/patch-pdns_recursor__cache.cc @@ -1,8 +1,9 @@ -$NetBSD: patch-pdns_recursor__cache.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_recursor__cache.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/recursor_cache.cc.orig 2013-05-09 15:25:53.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/recursor_cache.cc.orig 2014-10-30 10:18:22.000000000 +0000 +++ pdns/recursor_cache.cc -@@ -74,7 +74,7 @@ DNSResourceRecord String2DNSRR(const str +@@ -53,7 +53,7 @@ DNSResourceRecord String2DNSRR(const str rr.content="."; } else { @@ -11,7 +12,7 @@ $NetBSD: patch-pdns_recursor__cache.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ rr.content=regen->getZoneRepresentation(); } rr.content.reserve(0); -@@ -99,7 +99,7 @@ string DNSRR2String(const DNSResourceRec +@@ -79,7 +79,7 @@ string DNSRR2String(const DNSResourceRec return simpleCompress(rr.content, rr.qname); else { string ret; diff --git a/net/powerdns/patches/patch-pdns_resolver.cc b/net/powerdns/patches/patch-pdns_resolver.cc index d49d31dd865..721a9f5a1bc 100644 --- a/net/powerdns/patches/patch-pdns_resolver.cc +++ b/net/powerdns/patches/patch-pdns_resolver.cc @@ -1,11 +1,12 @@ -$NetBSD: patch-pdns_resolver.cc,v 1.2 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_resolver.cc,v 1.3 2014/12/10 14:50:09 fhajny Exp $ Limit inclusion of boost headers to only those necessary to avoid conflicting types errors on Solaris. +Resolve boost symbol ambiguity. ---- pdns/resolver.cc.orig 2012-01-05 13:54:51.000000000 +0000 +--- pdns/resolver.cc.orig 2014-10-30 10:18:22.000000000 +0000 +++ pdns/resolver.cc -@@ -29,7 +29,7 @@ +@@ -33,7 +33,7 @@ #include <cstring> #include <string> #include <vector> @@ -14,25 +15,36 @@ types errors on Solaris. #include "dns.hh" #include "qtype.hh" #include "tcpreceiver.hh" -@@ -183,7 +183,7 @@ bool Resolver::tryGetSOASerial(string* d - if(mdp.d_qtype != QType::SOA || mdp.d_answers.begin()->first.d_type != QType::SOA) - throw ResolverException("Query to '" + fromaddr.toString() + "' for SOA of '" + *domain + "' returned wrong record type"); - -- shared_ptr<SOARecordContent> rrc=boost::dynamic_pointer_cast<SOARecordContent>(mdp.d_answers.begin()->first.d_content); -+ boost::shared_ptr<SOARecordContent> rrc=boost::dynamic_pointer_cast<SOARecordContent>(mdp.d_answers.begin()->first.d_content); - - *theirSerial=rrc->d_st.serial; - -@@ -383,10 +383,10 @@ int Resolver::axfrChunk(Resolver::res_t - - Resolver::res_t Resolver::result() - { -- shared_ptr<MOADNSParser> mdp; -+ boost::shared_ptr<MOADNSParser> mdp; - +@@ -286,12 +286,12 @@ bool Resolver::tryGetSOASerial(string* d + bool gotSOA=false; + BOOST_FOREACH(const MOADNSParser::answers_t::value_type& drc, mdp.d_answers) { + if(drc.first.d_type == QType::SOA) { +- shared_ptr<SOARecordContent> src=boost::dynamic_pointer_cast<SOARecordContent>(drc.first.d_content); ++ boost::shared_ptr<SOARecordContent> src=boost::dynamic_pointer_cast<SOARecordContent>(drc.first.d_content); + *theirSerial=src->d_st.serial; + gotSOA = true; + } + if(drc.first.d_type == QType::RRSIG) { +- shared_ptr<RRSIGRecordContent> rrc=boost::dynamic_pointer_cast<RRSIGRecordContent>(drc.first.d_content); ++ boost::shared_ptr<RRSIGRecordContent> rrc=boost::dynamic_pointer_cast<RRSIGRecordContent>(drc.first.d_content); + if(rrc->d_type == QType::SOA) { + *theirInception= std::max(*theirInception, rrc->d_siginception); + *theirExpire = std::max(*theirExpire, rrc->d_sigexpire); +@@ -396,7 +396,7 @@ AXFRRetriever::AXFRRetriever(const Combo + d_sock = -1; try { -- mdp=shared_ptr<MOADNSParser>(new MOADNSParser((char*)d_buf, d_len)); -+ mdp=boost::shared_ptr<MOADNSParser>(new MOADNSParser((char*)d_buf, d_len)); - } - catch(...) { - throw ResolverException("resolver: unable to parse packet of "+itoa(d_len)+" bytes"); + d_sock = makeQuerySocket(local, false); // make a TCP socket +- d_buf = shared_array<char>(new char[65536]); ++ d_buf = boost::shared_array<char>(new char[65536]); + d_remote = remote; // mostly for error reporting + this->connect(); + d_soacount = 0; +@@ -490,7 +490,7 @@ int AXFRRetriever::getChunk(Resolver::re + checkTSIG = true; + + if(answer.first.d_type == QType::TSIG) { +- shared_ptr<TSIGRecordContent> trc = boost::dynamic_pointer_cast<TSIGRecordContent>(answer.first.d_content); ++ boost::shared_ptr<TSIGRecordContent> trc = boost::dynamic_pointer_cast<TSIGRecordContent>(answer.first.d_content); + theirMac = trc->d_mac; + d_trc.d_time = trc->d_time; + checkTSIG = true; diff --git a/net/powerdns/patches/patch-pdns_tcpreceiver.cc b/net/powerdns/patches/patch-pdns_tcpreceiver.cc index faf3f1b93ee..af6ce474be3 100644 --- a/net/powerdns/patches/patch-pdns_tcpreceiver.cc +++ b/net/powerdns/patches/patch-pdns_tcpreceiver.cc @@ -1,17 +1,18 @@ -$NetBSD: patch-pdns_tcpreceiver.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +$NetBSD: patch-pdns_tcpreceiver.cc,v 1.2 2014/12/10 14:50:09 fhajny Exp $ ---- pdns/tcpreceiver.cc.orig 2013-05-09 15:25:58.000000000 +0000 +Resolve boost symbol ambiguity. +--- pdns/tcpreceiver.cc.orig 2014-10-21 11:31:14.000000000 +0000 +++ pdns/tcpreceiver.cc -@@ -170,7 +170,7 @@ void connectWithTimeout(int fd, struct s +@@ -173,7 +173,7 @@ void connectWithTimeout(int fd, struct s ; } -void TCPNameserver::sendPacket(shared_ptr<DNSPacket> p, int outsock) +void TCPNameserver::sendPacket(boost::shared_ptr<DNSPacket> p, int outsock) { - const char *buf=p->getData(); - uint16_t len=htons(p->len); -@@ -188,7 +188,7 @@ catch(NetworkError& ae) { + + /* Query statistics */ +@@ -203,7 +203,7 @@ catch(NetworkError& ae) { throw NetworkError("Error reading DNS data from TCP client "+remote.toString()+": "+ae.what()); } @@ -19,8 +20,8 @@ $NetBSD: patch-pdns_tcpreceiver.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ +static void proxyQuestion(boost::shared_ptr<DNSPacket> packet) { int sock=socket(AF_INET, SOCK_STREAM, 0); - if(sock < 0) -@@ -232,7 +232,7 @@ static void proxyQuestion(shared_ptr<DNS + +@@ -247,7 +247,7 @@ static void proxyQuestion(shared_ptr<DNS void *TCPNameserver::doConnection(void *data) { @@ -29,8 +30,8 @@ $NetBSD: patch-pdns_tcpreceiver.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ // Fix gcc-4.0 error (on AMD64) int fd=(int)(long)data; // gotta love C (generates a harmless warning on opteron) pthread_detach(pthread_self()); -@@ -264,7 +264,7 @@ void *TCPNameserver::doConnection(void * - getQuestion(fd,mesg,pktlen,remote); +@@ -286,7 +286,7 @@ void *TCPNameserver::doConnection(void * + getQuestion(fd, mesg, pktlen, remote); S.inc("tcp-queries"); - packet=shared_ptr<DNSPacket>(new DNSPacket); @@ -38,84 +39,74 @@ $NetBSD: patch-pdns_tcpreceiver.cc,v 1.1 2013/05/09 20:06:53 joerg Exp $ packet->setRemote(&remote); packet->d_tcp=true; packet->setSocket(fd); -@@ -277,8 +277,8 @@ void *TCPNameserver::doConnection(void * - continue; +@@ -305,8 +305,8 @@ void *TCPNameserver::doConnection(void * + continue; } - shared_ptr<DNSPacket> reply; - shared_ptr<DNSPacket> cached= shared_ptr<DNSPacket>(new DNSPacket); + boost::shared_ptr<DNSPacket> reply; + boost::shared_ptr<DNSPacket> cached= boost::shared_ptr<DNSPacket>(new DNSPacket); + if(logDNSQueries) { + string remote; + if(packet->hasEDNSSubnet()) +@@ -340,7 +340,7 @@ void *TCPNameserver::doConnection(void * + } + bool shouldRecurse; - if(!packet->d.rd && (PC.get(packet.get(), cached.get()))) { // short circuit - does the PacketCache recognize this question? - cached->setRemote(&packet->remote); -@@ -299,7 +299,7 @@ void *TCPNameserver::doConnection(void * - } - bool shouldRecurse; +- reply=shared_ptr<DNSPacket>(s_P->questionOrRecurse(packet.get(), &shouldRecurse)); // we really need to ask the backend :-) ++ reply=boost::shared_ptr<DNSPacket>(s_P->questionOrRecurse(packet.get(), &shouldRecurse)); // we really need to ask the backend :-) -- reply=shared_ptr<DNSPacket>(s_P->questionOrRecurse(packet.get(), &shouldRecurse)); // we really need to ask the backend :-) -+ reply=boost::shared_ptr<DNSPacket>(s_P->questionOrRecurse(packet.get(), &shouldRecurse)); // we really need to ask the backend :-) + if(shouldRecurse) { + proxyQuestion(packet); +@@ -387,7 +387,7 @@ void *TCPNameserver::doConnection(void * - if(shouldRecurse) { - proxyQuestion(packet); -@@ -344,7 +344,7 @@ void *TCPNameserver::doConnection(void * - return 0; - } + // call this method with s_plock held! -bool TCPNameserver::canDoAXFR(shared_ptr<DNSPacket> q) +bool TCPNameserver::canDoAXFR(boost::shared_ptr<DNSPacket> q) { if(::arg().mustDo("disable-axfr")) return false; -@@ -363,20 +363,20 @@ bool TCPNameserver::canDoAXFR(shared_ptr - } +@@ -498,9 +498,9 @@ namespace { + return soa; + } + +- shared_ptr<DNSPacket> getFreshAXFRPacket(shared_ptr<DNSPacket> q) ++ boost::shared_ptr<DNSPacket> getFreshAXFRPacket(boost::shared_ptr<DNSPacket> q) + { +- shared_ptr<DNSPacket> ret = shared_ptr<DNSPacket>(q->replyPacket()); ++ boost::shared_ptr<DNSPacket> ret = boost::shared_ptr<DNSPacket>(q->replyPacket()); + ret->setCompress(false); + ret->d_dnssecOk=false; // RFC 5936, 2.2.5 + ret->d_tcp = true; +@@ -510,7 +510,7 @@ namespace { + /** do the actual zone transfer. Return 0 in case of error, 1 in case of success */ -int TCPNameserver::doAXFR(const string &target, shared_ptr<DNSPacket> q, int outsock) +int TCPNameserver::doAXFR(const string &target, boost::shared_ptr<DNSPacket> q, int outsock) { -- shared_ptr<DNSPacket> outpacket; -+ boost::shared_ptr<DNSPacket> outpacket; - if(!canDoAXFR(q)) { - L<<Logger::Error<<"AXFR of domain '"<<target<<"' denied to "<<q->getRemote()<<endl; - -- outpacket=shared_ptr<DNSPacket>(q->replyPacket()); -+ outpacket=boost::shared_ptr<DNSPacket>(q->replyPacket()); - outpacket->setRcode(RCode::Refused); - // FIXME: should actually figure out if we are auth over a zone, and send out 9 if we aren't - sendPacket(outpacket,outsock); - return 0; - } - L<<Logger::Error<<"AXFR of domain '"<<target<<"' initiated by "<<q->getRemote()<<endl; -- outpacket=shared_ptr<DNSPacket>(q->replyPacket()); -+ outpacket=boost::shared_ptr<DNSPacket>(q->replyPacket()); - - DNSResourceRecord soa; - DNSResourceRecord rr; -@@ -450,7 +450,7 @@ int TCPNameserver::doAXFR(const string & - if(::arg().mustDo("strict-rfc-axfrs")) - chunk=1; - -- outpacket=shared_ptr<DNSPacket>(q->replyPacket()); -+ outpacket=boost::shared_ptr<DNSPacket>(q->replyPacket()); - outpacket->setCompress(false); - - while(B->get(rr)) { -@@ -464,7 +464,7 @@ int TCPNameserver::doAXFR(const string & - - sendPacket(outpacket, outsock); - -- outpacket=shared_ptr<DNSPacket>(q->replyPacket()); -+ outpacket=boost::shared_ptr<DNSPacket>(q->replyPacket()); - outpacket->setCompress(false); - // FIXME: Subsequent messages SHOULD NOT have a question section, though the final message MAY. + bool noAXFRBecauseOfNSEC3Narrow=false; + NSEC3PARAMRecordContent ns3pr; +@@ -530,7 +530,7 @@ int TCPNameserver::doAXFR(const string & } -@@ -475,7 +475,7 @@ int TCPNameserver::doAXFR(const string & - - DLOG(L<<"Done writing out records"<<endl); - /* and terminate with yet again the SOA record */ -- outpacket=shared_ptr<DNSPacket>(q->replyPacket()); -+ outpacket=boost::shared_ptr<DNSPacket>(q->replyPacket()); - outpacket->addRecord(soa); - sendPacket(outpacket, outsock); - DLOG(L<<"last packet - close"<<endl); + } + +- shared_ptr<DNSPacket> outpacket= getFreshAXFRPacket(q); ++ boost::shared_ptr<DNSPacket> outpacket= getFreshAXFRPacket(q); + if(q->d_dnssecOk) + outpacket->d_dnssecOk=true; // RFC 5936, 2.2.5 'SHOULD' + +@@ -926,9 +926,9 @@ int TCPNameserver::doAXFR(const string & + return 1; + } + +-int TCPNameserver::doIXFR(shared_ptr<DNSPacket> q, int outsock) ++int TCPNameserver::doIXFR(boost::shared_ptr<DNSPacket> q, int outsock) + { +- shared_ptr<DNSPacket> outpacket=getFreshAXFRPacket(q); ++ boost::shared_ptr<DNSPacket> outpacket=getFreshAXFRPacket(q); + if(q->d_dnssecOk) + outpacket->d_dnssecOk=true; // RFC 5936, 2.2.5 'SHOULD' + |