From 1281a659b52d9f2fceee83cc9a901acf43a36eba Mon Sep 17 00:00:00 2001 From: Jochen Neumeister Date: Mon, 19 Nov 2018 16:17:49 +0000 Subject: [PATCH] MFH: r485315 Update to 4.0.9 Changelog: https://doc.powerdns.com/recursor/changelog/4.0.html Expiration date is 2018-12-31 Please migrate to Version 4.1.x dns/powerdns-recursor PR: 233141 Submitted by: Ralf van der Enden (maintainer) Security: e9aa0e4c-ea8b-11e8-a5b7-00e04c1ea73d Sponsored by: Netzkommune GmbH Approved by: ports-secteam (miwi) --- dns/powerdns-recursor40/Makefile | 7 +- dns/powerdns-recursor40/distinfo | 6 +- .../files/patch-boost-1.67 | 228 +++++++++--------- 3 files changed, 122 insertions(+), 119 deletions(-) diff --git a/dns/powerdns-recursor40/Makefile b/dns/powerdns-recursor40/Makefile index 2d4e2fb4f02a..33398841b101 100644 --- a/dns/powerdns-recursor40/Makefile +++ b/dns/powerdns-recursor40/Makefile @@ -2,8 +2,8 @@ # $FreeBSD$ PORTNAME= recursor -DISTVERSION= 4.0.8 -PORTREVISION= 7 +DISTVERSION= 4.0.9 +PORTREVISION?= 0 CATEGORIES= dns ipv6 MASTER_SITES= http://downloads.powerdns.com/releases/ PKGNAMEPREFIX= powerdns- @@ -15,6 +15,9 @@ COMMENT= Advanced DNS recursor LICENSE= GPLv2 +DEPRECATED= FreeBSD 10.3 has reached EoL since 2018-04-30; users should upgrade and use dns/powerdns-recursor instead +EXPIRATION_DATE= 2018-12-31 + BROKEN_armv6= fails to compile: use of overloaded operator << is ambiguous BROKEN_armv7= fails to compile: use of overloaded operator << is ambiguous BROKEN_sparc64= fails to compile: json11.cpp: undefined reference to std::__throw_out_of_range_fmt diff --git a/dns/powerdns-recursor40/distinfo b/dns/powerdns-recursor40/distinfo index b82692711d3c..3b076f973390 100644 --- a/dns/powerdns-recursor40/distinfo +++ b/dns/powerdns-recursor40/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1513108912 -SHA256 (pdns-recursor-4.0.8.tar.bz2) = 9c6ff00f0e26044b0c81f1a8304743b4fc0f6699a356fce28cc8c2e6aaf16513 -SIZE (pdns-recursor-4.0.8.tar.bz2) = 1071831 +TIMESTAMP = 1541587471 +SHA256 (pdns-recursor-4.0.9.tar.bz2) = a4d8cf2401488c0a2d9c5f97bb6ebf135243edf2272aa66aa3855f94551fe8b8 +SIZE (pdns-recursor-4.0.9.tar.bz2) = 1117598 diff --git a/dns/powerdns-recursor40/files/patch-boost-1.67 b/dns/powerdns-recursor40/files/patch-boost-1.67 index 8b691dc3cfb0..217c3d6f8c0a 100644 --- a/dns/powerdns-recursor40/files/patch-boost-1.67 +++ b/dns/powerdns-recursor40/files/patch-boost-1.67 @@ -1,8 +1,8 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 ---- arguments.cc.orig 2017-12-11 10:38:52 UTC +--- arguments.cc.orig 2018-11-06 14:56:58 UTC +++ arguments.cc -@@ -443,7 +443,7 @@ bool ArgvMap::file(const char *fname, bool lax, bool i +@@ -443,7 +443,7 @@ bool ArgvMap::file(const char *fname, bo set("include-dir","Directory to include configuration files from"); if(!parseFile(fname, "", lax)) { @@ -11,7 +11,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return false; } -@@ -453,7 +453,7 @@ bool ArgvMap::file(const char *fname, bool lax, bool i +@@ -453,7 +453,7 @@ bool ArgvMap::file(const char *fname, bo gatherIncludes(extraConfigs); for(const std::string& fn : extraConfigs) { if (!file(fn.c_str(), lax, true)) { @@ -20,7 +20,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw ArgException(fn + " could not be parsed"); } } -@@ -471,18 +471,18 @@ void ArgvMap::gatherIncludes(std::vector +@@ -471,18 +471,18 @@ void ArgvMap::gatherIncludes(std::vector // stat if (stat(params["include-dir"].c_str(), &st)) { @@ -42,7 +42,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw ArgException(params["include-dir"] + " is not accessible"); } -@@ -494,7 +494,7 @@ void ArgvMap::gatherIncludes(std::vector +@@ -494,7 +494,7 @@ void ArgvMap::gatherIncludes(std::vector namebuf << params["include-dir"].c_str() << "/" << ent->d_name; // FIXME: Use some path separator // ensure it's readable file if (stat(namebuf.str().c_str(), &st) || !S_ISREG(st.st_mode)) { @@ -51,9 +51,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 closedir(dir); throw ArgException(namebuf.str() + " does not exist!"); } ---- dns.hh.orig 2017-12-11 10:38:52 UTC +--- dns.hh.orig 2018-11-06 14:56:58 UTC +++ dns.hh -@@ -241,7 +241,6 @@ inline uint16_t * getFlagsFromDNSHeader(struct dnshead +@@ -241,7 +241,6 @@ inline uint16_t * getFlagsFromDNSHeader( #define FLAGS_CD_OFFSET (12) #endif @@ -61,9 +61,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 extern time_t s_starttime; uint32_t hashQuestion(const char* packet, uint16_t len, uint32_t init); ---- gss_context.cc.orig 2017-12-11 10:38:52 UTC +--- gss_context.cc.orig 2018-11-06 14:56:58 UTC +++ gss_context.cc -@@ -456,17 +456,17 @@ bool gss_add_signature(const DNSName& context, const s +@@ -456,17 +456,17 @@ bool gss_add_signature(const DNSName& co string tmp_mac; GssContext gssctx(context); if (!gssctx.valid()) { @@ -85,7 +85,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return false; } -@@ -477,17 +477,17 @@ bool gss_add_signature(const DNSName& context, const s +@@ -477,17 +477,17 @@ bool gss_add_signature(const DNSName& co bool gss_verify_signature(const DNSName& context, const std::string& message, const std::string& mac) { GssContext gssctx(context); if (!gssctx.valid()) { @@ -107,7 +107,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return false; } ---- logger.cc.orig 2017-12-11 10:38:52 UTC +--- logger.cc.orig 2018-11-06 14:56:58 UTC +++ logger.cc @@ -32,15 +32,9 @@ extern StatBag S; #include "namespaces.hh" @@ -127,7 +127,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 void Logger::log(const string &msg, Urgency u) { -@@ -102,7 +96,7 @@ void Logger::setName(const string &_name) +@@ -102,7 +96,7 @@ void Logger::setName(const string &_name void Logger::initKey() { @@ -136,7 +136,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 unixDie("Creating thread key for logger"); } -@@ -137,13 +131,13 @@ void Logger::perThreadDestructor(void* buf) +@@ -137,13 +131,13 @@ void Logger::perThreadDestructor(void* b Logger::PerThread* Logger::getPerThread() { @@ -152,9 +152,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return ret; } ---- logger.hh.orig 2017-12-11 10:38:52 UTC +--- logger.hh.orig 2018-11-06 14:56:58 UTC +++ logger.hh -@@ -66,9 +66,9 @@ class Logger (public) +@@ -66,9 +66,9 @@ public: void resetFlags(){flags=0;open();} //!< zero the flags /** Use this to stream to your log, like this: \code @@ -167,7 +167,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 \endcode */ Logger& operator<<(const char *s); -@@ -108,10 +108,10 @@ class Logger (public) +@@ -108,10 +108,10 @@ private: bool opened; bool d_disableSyslog; static pthread_once_t s_once; @@ -180,9 +180,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 #ifdef VERBOSELOG #define DLOG(x) x ---- lua-recursor4.cc.orig 2017-12-11 10:38:52 UTC +--- lua-recursor4.cc.orig 2018-11-06 14:56:58 UTC +++ lua-recursor4.cc -@@ -79,7 +79,6 @@ int RecursorLua4::gettag(const ComboAddress& remote, c +@@ -78,7 +78,6 @@ int RecursorLua4::gettag(const ComboAddr #else @@ -190,7 +190,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 #include "ext/luawrapper/include/LuaContext.hpp" static int followCNAMERecords(vector& ret, const QType& qtype) -@@ -310,7 +309,7 @@ RecursorLua4::RecursorLua4(const std::string& fname) +@@ -309,7 +308,7 @@ RecursorLua4::RecursorLua4(const std::st cas.insert(boost::get(in)); } } @@ -199,7 +199,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 }); d_lw->registerFunction("check",[](const cas_t& cas, const ComboAddress&ca) { -@@ -464,7 +463,7 @@ RecursorLua4::RecursorLua4(const std::string& fname) +@@ -463,7 +462,7 @@ RecursorLua4::RecursorLua4(const std::st } } catch(std::exception& e) { @@ -208,7 +208,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } } ); -@@ -474,7 +473,7 @@ RecursorLua4::RecursorLua4(const std::string& fname) +@@ -473,7 +472,7 @@ RecursorLua4::RecursorLua4(const std::st d_lw->writeFunction("pdnslog", [](const std::string& msg, boost::optional loglevel) { @@ -217,7 +217,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 }); typedef vector > in_t; vector > > pd{ -@@ -650,7 +649,7 @@ loop:; +@@ -649,7 +648,7 @@ loop:; dq->udpAnswer = GenUDPQueryResponse(dq->udpQueryDest, dq->udpQuery); auto cbFunc = d_lw->readVariable>(dq->udpCallback).get_value_or(0); if(!cbFunc) { @@ -226,9 +226,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return false; } bool result=cbFunc(dq); ---- lwres.cc.orig 2017-12-11 10:38:52 UTC +--- lwres.cc.orig 2018-11-06 14:56:58 UTC +++ lwres.cc -@@ -236,7 +236,7 @@ int asyncresolve(const ComboAddress& ip, const DNSName +@@ -236,7 +236,7 @@ int asyncresolve(const ComboAddress& ip, if(domain != mdp.d_qname) { if(!mdp.d_qname.empty() && domain.toString().find((char)0) == string::npos /* ugly */) {// embedded nulls are too noisy, plus empty domains are too @@ -237,7 +237,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } // unexpected count has already been done @ pdns_recursor.cc goto out; -@@ -276,7 +276,7 @@ int asyncresolve(const ComboAddress& ip, const DNSName +@@ -276,7 +276,7 @@ int asyncresolve(const ComboAddress& ip, } catch(std::exception &mde) { if(::arg().mustDo("log-common-errors")) @@ -246,7 +246,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 lwr->d_rcode = RCode::FormErr; g_stats.serverParseError++; #ifdef HAVE_PROTOBUF -@@ -287,7 +287,7 @@ int asyncresolve(const ComboAddress& ip, const DNSName +@@ -287,7 +287,7 @@ int asyncresolve(const ComboAddress& ip, return 1; // success - oddly enough } catch(...) { @@ -255,9 +255,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } g_stats.serverParseError++; ---- pdns_recursor.cc.orig 2017-12-11 10:38:52 UTC +--- pdns_recursor.cc.orig 2018-11-06 14:56:58 UTC +++ pdns_recursor.cc -@@ -347,12 +347,12 @@ void setSocketBuffer(int fd, int optname, uint32_t siz +@@ -347,12 +347,12 @@ void setSocketBuffer(int fd, int optname socklen_t len=sizeof(psize); if(!getsockopt(fd, SOL_SOCKET, optname, (char*)&psize, &len) && psize > size) { @@ -272,7 +272,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } -@@ -395,7 +395,7 @@ class UDPClientSocks (public) +@@ -395,7 +395,7 @@ public: closesocket(*fd); } catch(const PDNSException& e) { @@ -281,7 +281,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } if(err==ENETUNREACH) // Seth "My Interfaces Are Like A Yo Yo" Arnold special -@@ -433,7 +433,7 @@ class UDPClientSocks (public) +@@ -433,7 +433,7 @@ public: closesocket(*i); } catch(const PDNSException& e) { @@ -290,7 +290,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } d_socks.erase(i++); -@@ -549,7 +549,7 @@ int arecvfrom(char *data, size_t len, int flags, const +@@ -549,7 +549,7 @@ int arecvfrom(char *data, size_t len, in *d_len=packet.size(); memcpy(data,packet.c_str(),min(len,*d_len)); if(*nearMissLimit && pident.nearMisses > *nearMissLimit) { @@ -420,7 +420,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 - L<d_remote.toStringWithPort()<<" failed with: "<d_remote.toStringWithPort()<<" failed with: "<insertResponsePacket(dc->d_tag, dc->d_mdp.d_qname, dc->d_mdp.d_qtype, dc->d_query, + t_packetCache->insertResponsePacket(dc->d_tag, dc->d_mdp.d_qname, dc->d_mdp.d_qtype, dc->d_mdp.d_qclass, dc->d_query, string((const char*)&*packet.begin(), packet.size()), @@ -1157,11 +1157,11 @@ void startDoResolve(void *p) bool hadError=true; @@ -483,7 +483,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } g_stats.maxMThreadStackUsage = max(MT->getMaxStackUsage(), g_stats.maxMThreadStackUsage); -@@ -1322,7 +1322,7 @@ void handleRunningTCPQuestion(int fd, FDMultiplexer::f +@@ -1322,7 +1322,7 @@ void handleRunningTCPQuestion(int fd, FD } if(!bytes || bytes < 0) { if(g_logCommonErrors) @@ -492,7 +492,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 t_fdm->removeReadFD(fd); return; } -@@ -1330,7 +1330,7 @@ void handleRunningTCPQuestion(int fd, FDMultiplexer::f +@@ -1330,7 +1330,7 @@ void handleRunningTCPQuestion(int fd, FD else if(conn->state==TCPConnection::GETQUESTION) { ssize_t bytes=recv(conn->getFD(), conn->data + conn->bytesread, conn->qlen - conn->bytesread, 0); if(!bytes || bytes < 0 || bytes > std::numeric_limits::max()) { @@ -501,7 +501,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 t_fdm->removeReadFD(fd); return; } -@@ -1345,7 +1345,7 @@ void handleRunningTCPQuestion(int fd, FDMultiplexer::f +@@ -1345,7 +1345,7 @@ void handleRunningTCPQuestion(int fd, FD catch(MOADNSException &mde) { g_stats.clientParseError++; if(g_logCommonErrors) @@ -510,7 +510,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return; } dc->d_tcpConnection = conn; // carry the torch -@@ -1381,14 +1381,14 @@ void handleRunningTCPQuestion(int fd, FDMultiplexer::f +@@ -1381,14 +1381,14 @@ void handleRunningTCPQuestion(int fd, FD } catch(std::exception& e) { if(g_logCommonErrors) @@ -527,7 +527,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } } #ifdef HAVE_PROTOBUF -@@ -1404,20 +1404,20 @@ void handleRunningTCPQuestion(int fd, FDMultiplexer::f +@@ -1404,20 +1404,20 @@ void handleRunningTCPQuestion(int fd, FD } catch(std::exception& e) { if(g_logCommonErrors) @@ -551,7 +551,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return; } else { -@@ -1443,7 +1443,7 @@ void handleNewTCPQuestion(int fd, FDMultiplexer::funcp +@@ -1443,7 +1443,7 @@ void handleNewTCPQuestion(int fd, FDMult closesocket(newsock); } catch(const PDNSException& e) { @@ -560,7 +560,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return; } -@@ -1452,14 +1452,14 @@ void handleNewTCPQuestion(int fd, FDMultiplexer::funcp +@@ -1452,14 +1452,14 @@ void handleNewTCPQuestion(int fd, FDMult t_remotes->push_back(addr); if(t_allowFrom && !t_allowFrom->match(&addr)) { if(!g_quiet) @@ -577,7 +577,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return; } -@@ -1469,7 +1469,7 @@ void handleNewTCPQuestion(int fd, FDMultiplexer::funcp +@@ -1469,7 +1469,7 @@ void handleNewTCPQuestion(int fd, FDMult closesocket(newsock); // don't call TCPConnection::closeAndCleanup here - did not enter it in the counts yet! } catch(const PDNSException& e) { @@ -586,7 +586,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return; } -@@ -1547,14 +1547,14 @@ string* doProcessUDPQuestion(const std::string& questi +@@ -1547,14 +1547,14 @@ string* doProcessUDPQuestion(const std:: } catch(std::exception& e) { if(g_logCommonErrors) @@ -603,7 +603,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } } -@@ -1579,7 +1579,7 @@ string* doProcessUDPQuestion(const std::string& questi +@@ -1579,7 +1579,7 @@ string* doProcessUDPQuestion(const std:: } #endif /* HAVE_PROTOBUF */ if(!g_quiet) @@ -612,7 +612,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_stats.packetCacheHits++; SyncRes::s_queries++; -@@ -1594,7 +1594,7 @@ string* doProcessUDPQuestion(const std::string& questi +@@ -1594,7 +1594,7 @@ string* doProcessUDPQuestion(const std:: addCMsgSrcAddr(&msgh, cbuf, &destaddr, 0); } if(sendmsg(fd, &msgh, 0) < 0 && g_logCommonErrors) @@ -621,7 +621,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 if(response.length() >= sizeof(struct dnsheader)) { struct dnsheader tmpdh; -@@ -1606,14 +1606,14 @@ string* doProcessUDPQuestion(const std::string& questi +@@ -1606,14 +1606,14 @@ string* doProcessUDPQuestion(const std:: } } catch(std::exception& e) { @@ -638,7 +638,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_stats.policyDrops++; return 0; } -@@ -1621,7 +1621,7 @@ string* doProcessUDPQuestion(const std::string& questi +@@ -1621,7 +1621,7 @@ string* doProcessUDPQuestion(const std:: if(MT->numProcesses() > g_maxMThreads) { if(!g_quiet) @@ -647,7 +647,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_stats.overCapacityDrops++; return 0; -@@ -1672,7 +1672,7 @@ void handleNewUDPQuestion(int fd, FDMultiplexer::funcp +@@ -1672,7 +1672,7 @@ void handleNewUDPQuestion(int fd, FDMult if(t_allowFrom && !t_allowFrom->match(&fromaddr)) { if(!g_quiet) @@ -656,7 +656,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_stats.unauthorizedUDP++; return; -@@ -1680,7 +1680,7 @@ void handleNewUDPQuestion(int fd, FDMultiplexer::funcp +@@ -1680,7 +1680,7 @@ void handleNewUDPQuestion(int fd, FDMult BOOST_STATIC_ASSERT(offsetof(sockaddr_in, sin_port) == offsetof(sockaddr_in6, sin6_port)); if(!fromaddr.sin4.sin_port) { // also works for IPv6 if(!g_quiet) @@ -665,7 +665,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_stats.clientParseError++; // not quite the best place to put it, but needs to go somewhere return; -@@ -1691,12 +1691,12 @@ void handleNewUDPQuestion(int fd, FDMultiplexer::funcp +@@ -1691,12 +1691,12 @@ void handleNewUDPQuestion(int fd, FDMult if(dh->qr) { g_stats.ignoredCount++; if(g_logCommonErrors) @@ -680,7 +680,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } else { string question(data, (size_t)len); -@@ -1729,12 +1729,12 @@ void handleNewUDPQuestion(int fd, FDMultiplexer::funcp +@@ -1729,12 +1729,12 @@ void handleNewUDPQuestion(int fd, FDMult catch(MOADNSException& mde) { g_stats.clientParseError++; if(g_logCommonErrors) @@ -840,7 +840,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw; } } -@@ -2140,11 +2140,11 @@ void handlePipeRequest(int fd, FDMultiplexer::funcpara +@@ -2140,11 +2140,11 @@ void handlePipeRequest(int fd, FDMultipl } catch(std::exception& e) { if(g_logCommonErrors) @@ -854,7 +854,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } if(tmsg->wantAnswer) { if(write(g_pipes[t_id].writeFromThread, &resp, sizeof(resp)) != sizeof(resp)) { -@@ -2245,10 +2245,10 @@ void handleRCC(int fd, FDMultiplexer::funcparam_t& var +@@ -2245,10 +2245,10 @@ void handleRCC(int fd, FDMultiplexer::fu command(); } catch(std::exception& e) { @@ -867,7 +867,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } } -@@ -2335,7 +2335,7 @@ void handleUDPServerResponse(int fd, FDMultiplexer::fu +@@ -2335,7 +2335,7 @@ void handleUDPServerResponse(int fd, FDM else { g_stats.serverParseError++; if(g_logCommonErrors) @@ -876,7 +876,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 ": packet smaller than DNS header"<(boost::get(constGet(have, "zoneSizeHint")))); } } @@ -1380,7 +1380,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } }); -@@ -198,10 +198,10 @@ void loadRecursorLuaConfig(const std::string& fname, b +@@ -198,10 +198,10 @@ void loadRecursorLuaConfig(const std::st } } catch(std::exception& e) { @@ -1393,7 +1393,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } }); -@@ -234,7 +234,7 @@ void loadRecursorLuaConfig(const std::string& fname, b +@@ -234,7 +234,7 @@ void loadRecursorLuaConfig(const std::st } } catch(std::exception& e) { @@ -1402,7 +1402,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } }); -@@ -282,14 +282,14 @@ void loadRecursorLuaConfig(const std::string& fname, b +@@ -282,14 +282,14 @@ void loadRecursorLuaConfig(const std::st } } else { @@ -1420,7 +1420,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } }); -@@ -302,14 +302,14 @@ void loadRecursorLuaConfig(const std::string& fname, b +@@ -302,14 +302,14 @@ void loadRecursorLuaConfig(const std::st } } else { @@ -1438,7 +1438,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } }); #endif -@@ -319,22 +319,22 @@ void loadRecursorLuaConfig(const std::string& fname, b +@@ -319,22 +319,22 @@ void loadRecursorLuaConfig(const std::st g_luaconfs.setState(lci); } catch(const LuaContext::ExecutionErrorException& e) { @@ -1465,9 +1465,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw; } ---- rec_channel_rec.cc.orig 2017-12-11 10:38:52 UTC +--- rec_channel_rec.cc.orig 2018-11-06 14:56:58 UTC +++ rec_channel_rec.cc -@@ -353,7 +353,7 @@ string doSetDnssecLogBogus(T begin, T end) +@@ -354,7 +354,7 @@ string doSetDnssecLogBogus(T begin, T en if (pdns_iequals(*begin, "on") || pdns_iequals(*begin, "yes")) { if (!g_dnssecLogBogus) { @@ -1476,7 +1476,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_dnssecLogBogus = true; return "DNSSEC Bogus logging enabled\n"; } -@@ -362,7 +362,7 @@ string doSetDnssecLogBogus(T begin, T end) +@@ -363,7 +363,7 @@ string doSetDnssecLogBogus(T begin, T en if (pdns_iequals(*begin, "off") || pdns_iequals(*begin, "no")) { if (g_dnssecLogBogus) { @@ -1485,7 +1485,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_dnssecLogBogus = false; return "DNSSEC Bogus logging disabled\n"; } -@@ -397,7 +397,7 @@ string doAddNTA(T begin, T end) +@@ -398,7 +398,7 @@ string doAddNTA(T begin, T end) if (begin != end) why += " "; } @@ -1494,7 +1494,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_luaconfs.modify([who, why](LuaConfigItems& lci) { lci.negAnchors[who] = why; }); -@@ -412,7 +412,7 @@ string doClearNTA(T begin, T end) +@@ -413,7 +413,7 @@ string doClearNTA(T begin, T end) return "No Negative Trust Anchor specified, doing nothing.\n"; if (begin + 1 == end && *begin == "*"){ @@ -1503,7 +1503,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_luaconfs.modify([](LuaConfigItems& lci) { lci.negAnchors.clear(); }); -@@ -440,7 +440,7 @@ string doClearNTA(T begin, T end) +@@ -441,7 +441,7 @@ string doClearNTA(T begin, T end) string removed(""); bool first(true); for (auto const &entry : toRemove) { @@ -1512,14 +1512,14 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_luaconfs.modify([entry](LuaConfigItems& lci) { lci.negAnchors.erase(entry); }); -@@ -488,17 +488,17 @@ string doAddTA(T begin, T end) +@@ -489,17 +489,17 @@ string doAddTA(T begin, T end) } try { - L<(dynamic_cast(DSRecordContent::make(what))); + auto ds=std::dynamic_pointer_cast(DSRecordContent::make(what)); lci.dsAnchors[who].insert(*ds); }); broadcastAccFunction(boost::bind(pleaseWipePacketCache, who, true)); @@ -1533,7 +1533,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return "Unable to add Trust Anchor for " + who.toStringRootDot() + ": " + e.what() + "\n"; } } -@@ -530,7 +530,7 @@ string doClearTA(T begin, T end) +@@ -531,7 +531,7 @@ string doClearTA(T begin, T end) string removed(""); bool first(true); for (auto const &entry : toRemove) { @@ -1542,7 +1542,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_luaconfs.modify([entry](LuaConfigItems& lci) { lci.dsAnchors.erase(entry); }); -@@ -900,7 +900,7 @@ RecursorControlParser::RecursorControlParser() +@@ -901,7 +901,7 @@ RecursorControlParser::RecursorControlPa static void doExitGeneric(bool nicely) { @@ -1551,7 +1551,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 extern RecursorControlChannel s_rcc; s_rcc.~RecursorControlChannel(); -@@ -1214,7 +1214,7 @@ string RecursorControlParser::getAnswer(const string& +@@ -1215,7 +1215,7 @@ string RecursorControlParser::getAnswer( try { loadRecursorLuaConfig(::arg()["lua-config-file"], false); @@ -1560,7 +1560,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return "Reloaded Lua configuration file '"+::arg()["lua-config-file"]+"'\n"; } catch(std::exception& e) { -@@ -1239,7 +1239,7 @@ string RecursorControlParser::getAnswer(const string& +@@ -1240,7 +1240,7 @@ string RecursorControlParser::getAnswer( if(cmd=="reload-acls") { if(!::arg()["chroot"].empty()) { @@ -1569,7 +1569,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return "Unable to reload ACL when chroot()'ed, please restart\n"; } -@@ -1248,12 +1248,12 @@ string RecursorControlParser::getAnswer(const string& +@@ -1249,12 +1249,12 @@ string RecursorControlParser::getAnswer( } catch(std::exception& e) { @@ -1584,7 +1584,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return ae.reason + string("\n"); } return "ok\n"; -@@ -1292,7 +1292,7 @@ string RecursorControlParser::getAnswer(const string& +@@ -1293,7 +1293,7 @@ string RecursorControlParser::getAnswer( if(cmd=="reload-zones") { if(!::arg()["chroot"].empty()) { @@ -1593,7 +1593,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return "Unable to reload zones and forwards when chroot()'ed, please restart\n"; } return reloadAuthAndForwards(); ---- recursor_cache.hh.orig 2017-12-11 10:38:52 UTC +--- recursor_cache.hh.orig 2018-11-06 14:56:58 UTC +++ recursor_cache.hh @@ -30,7 +30,6 @@ #include @@ -1611,9 +1611,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 #include "namespaces.hh" using namespace ::boost::multi_index; ---- reczones.cc.orig 2017-12-11 10:38:52 UTC +--- reczones.cc.orig 2018-11-06 14:56:58 UTC +++ reczones.cc -@@ -124,10 +124,10 @@ static void makeNameToIPZone(SyncRes::domainmap_t* new +@@ -124,10 +124,10 @@ static void makeNameToIPZone(SyncRes::do ad.d_records.insert(dr); if(newMap->count(dr.d_name)) { @@ -1626,7 +1626,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 (*newMap)[dr.d_name]=ad; } } -@@ -169,11 +169,11 @@ static void makeIPToNamesZone(SyncRes::domainmap_t* ne +@@ -169,11 +169,11 @@ static void makeIPToNamesZone(SyncRes::d } if(newMap->count(dr.d_name)) { @@ -1640,7 +1640,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 (*newMap)[dr.d_name]=ad; } } -@@ -218,15 +218,15 @@ void convertServersForAD(const std::string& input, Syn +@@ -218,15 +218,15 @@ void convertServersForAD(const std::stri for(vector::const_iterator iter = servers.begin(); iter != servers.end(); ++iter) { if(verbose && iter != servers.begin()) @@ -1685,7 +1685,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } return "reloading failed, see log\n"; } -@@ -325,7 +325,7 @@ void RPZIXFRTracker(const ComboAddress& master, const +@@ -325,7 +325,7 @@ void RPZIXFRTracker(const ComboAddress& sleep(refresh); @@ -1694,7 +1694,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 vector, vector > > deltas; ComboAddress local(localAddress); -@@ -335,12 +335,12 @@ void RPZIXFRTracker(const ComboAddress& master, const +@@ -335,12 +335,12 @@ void RPZIXFRTracker(const ComboAddress& try { deltas = getIXFRDeltas(master, zone, dr, tt, &local, maxReceivedBytes); } catch(std::runtime_error& e ){ @@ -1709,7 +1709,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 auto luaconfsCopy = g_luaconfs.getCopy(); int totremove=0, totadd=0; -@@ -348,7 +348,7 @@ void RPZIXFRTracker(const ComboAddress& master, const +@@ -348,7 +348,7 @@ void RPZIXFRTracker(const ComboAddress& const auto& remove = delta.first; const auto& add = delta.second; if(remove.empty()) { @@ -1718,7 +1718,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 luaconfsCopy.dfe.clear(polZone); } for(const auto& rr : remove) { // should always contain the SOA -@@ -360,11 +360,11 @@ void RPZIXFRTracker(const ComboAddress& master, const +@@ -360,11 +360,11 @@ void RPZIXFRTracker(const ComboAddress& // cout<<"Got good removal of SOA serial "<d_st.serial<(rr); @@ -1755,7 +1755,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 g_luaconfs.setState(luaconfsCopy); } } -@@ -414,7 +414,7 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -414,7 +414,7 @@ SyncRes::domainmap_t* parseAuthAndForwar // headers.first=toCanonic("", headers.first); if(n==0) { ad.d_rdForward = false; @@ -1764,7 +1764,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 ZoneParserTNG zpt(headers.second, DNSName(headers.first)); DNSResourceRecord rr; DNSRecord dr; -@@ -436,13 +436,13 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -436,13 +436,13 @@ SyncRes::domainmap_t* parseAuthAndForwar } } else { @@ -1781,7 +1781,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 convertServersForAD(headers.second, ad, ";"); if(n == 2) { -@@ -455,7 +455,7 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -455,7 +455,7 @@ SyncRes::domainmap_t* parseAuthAndForwar } if(!::arg()["forward-zones-file"].empty()) { @@ -1790,7 +1790,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 SyncRes::AuthDomain ad; FILE *rfp=fopen(::arg()["forward-zones-file"].c_str(), "r"); -@@ -502,7 +502,7 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -502,7 +502,7 @@ SyncRes::domainmap_t* parseAuthAndForwar (*newMap)[DNSName(domain)]=ad; } @@ -1799,7 +1799,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } if(::arg().mustDo("export-etc-hosts")) { -@@ -511,7 +511,7 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -511,7 +511,7 @@ SyncRes::domainmap_t* parseAuthAndForwar ifstream ifs(fname.c_str()); if(!ifs) { @@ -1808,7 +1808,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } else { string searchSuffix = ::arg()["export-etc-hosts-search-suffix"]; -@@ -543,7 +543,7 @@ SyncRes::domainmap_t* parseAuthAndForwards() +@@ -543,7 +543,7 @@ SyncRes::domainmap_t* parseAuthAndForwar } } if(::arg().mustDo("serve-rfc1918")) { @@ -1817,7 +1817,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 parts.clear(); parts.push_back("127"); makeIPToNamesZone(newMap, parts); ---- remote_logger.cc.orig 2017-12-11 10:38:52 UTC +--- remote_logger.cc.orig 2018-11-06 14:56:58 UTC +++ remote_logger.cc @@ -21,7 +21,7 @@ bool RemoteLogger::reconnect() } @@ -1837,9 +1837,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 #else vinfolog("Error sending data to remote logger (%s): %s", d_remote.toStringWithPort(), e.what()); #endif ---- rpzloader.cc.orig 2017-12-11 10:38:52 UTC +--- rpzloader.cc.orig 2018-11-06 14:56:58 UTC +++ rpzloader.cc -@@ -159,9 +159,9 @@ void RPZRecordToPolicy(const DNSRecord& dr, DNSFilterE +@@ -159,9 +159,9 @@ void RPZRecordToPolicy(const DNSRecord& shared_ptr loadRPZFromServer(const ComboAddress& master, const DNSName& zone, DNSFilterEngine& target, boost::optional defpol, size_t place, const TSIGTriplet& tt, size_t maxReceivedBytes, const ComboAddress& localAddress) { @@ -1851,7 +1851,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 ComboAddress local(localAddress); if (local == ComboAddress()) -@@ -189,11 +189,11 @@ shared_ptr loadRPZFromServer(const C +@@ -189,11 +189,11 @@ shared_ptr loadRPZFrom nrecords++; } if(last != time(0)) { @@ -1865,7 +1865,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 return sr; } ---- secpoll-recursor.cc.orig 2017-12-11 10:38:52 UTC +--- secpoll-recursor.cc.orig 2018-11-06 14:56:58 UTC +++ secpoll-recursor.cc @@ -53,7 +53,7 @@ void doSecPoll(time_t* last_secpoll) } @@ -1899,7 +1899,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 + g_log<gr_gid; -@@ -205,7 +205,7 @@ int Utility::makeUidNumeric(const string &username) +@@ -205,7 +205,7 @@ int Utility::makeUidNumeric(const string if(!(newuid=atoi(username.c_str()))) { struct passwd *pw=getpwnam(username.c_str()); if(!pw) { @@ -1999,7 +1999,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 exit(1); } newuid=pw->pw_uid; ---- validate-recursor.cc.orig 2017-12-11 10:38:52 UTC +--- validate-recursor.cc.orig 2018-11-06 14:56:58 UTC +++ validate-recursor.cc @@ -6,7 +6,7 @@ DNSSECMode g_dnssecmode{DNSSECMode::ProcessNoValidate}; @@ -2010,7 +2010,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 class SRRecordOracle : public DNSRecordOracle { ---- validate.cc.orig 2017-12-11 10:38:52 UTC +--- validate.cc.orig 2018-11-06 14:56:58 UTC +++ validate.cc @@ -6,7 +6,7 @@ #include "logger.hh" @@ -2021,7 +2021,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 void dotEdge(DNSName zone, string type1, DNSName name1, string tag1, string type2, DNSName name2, string tag2, string color=""); void dotNode(string type, DNSName name, string tag, string content); string dotName(string type, DNSName name, string tag); ---- version.cc.orig 2017-12-11 10:38:52 UTC +--- version.cc.orig 2018-11-06 14:56:58 UTC +++ version.cc @@ -72,22 +72,22 @@ string productTypeApiType() { @@ -2065,7 +2065,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 #undef escape_quotes #undef double_escape #endif ---- webserver.cc.orig 2017-12-11 10:38:52 UTC +--- webserver.cc.orig 2018-11-06 14:56:58 UTC +++ webserver.cc @@ -43,12 +43,12 @@ json11::Json HttpRequest::json() { @@ -2082,7 +2082,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw HttpBadRequestException(); } return doc; -@@ -136,13 +136,13 @@ static void apiWrapper(WebServer::HandlerFunction hand +@@ -136,13 +136,13 @@ static void apiWrapper(WebServer::Handle resp->headers["access-control-allow-origin"] = "*"; if (api_key.empty()) { @@ -2098,7 +2098,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw HttpUnauthorizedException("X-API-Key"); } -@@ -185,7 +185,7 @@ static void webWrapper(WebServer::HandlerFunction hand +@@ -185,7 +185,7 @@ static void webWrapper(WebServer::Handle if (!web_password.empty()) { bool auth_ok = req->compareAuthorization(web_password); if (!auth_ok) { @@ -2107,7 +2107,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 throw HttpUnauthorizedException("Basic"); } } -@@ -216,11 +216,11 @@ void WebServer::handleRequest(HttpRequest& req, HttpRe +@@ -216,11 +216,11 @@ void WebServer::handleRequest(HttpReques try { if (!req.complete) { @@ -2121,7 +2121,7 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 YaHTTP::strstr_map_t::iterator header; -@@ -235,33 +235,33 @@ void WebServer::handleRequest(HttpRequest& req, HttpRe +@@ -235,33 +235,33 @@ void WebServer::handleRequest(HttpReques YaHTTP::THandlerFunction handler; if (!YaHTTP::Router::Route(&req, handler)) { @@ -2217,9 +2217,9 @@ https://github.com/PowerDNS/pdns/commit/e6a9dde524b5 } exit(1); } ---- ws-recursor.cc.orig 2017-12-11 10:38:52 UTC +--- ws-recursor.cc.orig 2018-11-06 14:56:58 UTC +++ ws-recursor.cc -@@ -597,7 +597,7 @@ void AsyncWebServer::serveConnection(Socket *client) +@@ -597,7 +597,7 @@ void AsyncWebServer::serveConnection(Soc // now send the reply if (asendtcp(data, client) == -1 || data.empty()) {