Blob Blame History Raw
From 71246536642590e8e8b21c11307ec4bd0e165066 Mon Sep 17 00:00:00 2001
From: Remi Gacogne <remi.gacogne@powerdns.com>
Date: Tue, 28 Apr 2020 17:51:47 +0200
Subject: [PATCH] Replace boost's placeholders with the ones from the std
 namespace

Boost 1.73 moved boost::bind placeholders to the placeholders
namespace which did not exist before 1.60, let's switch to
std::bind and std::placeholders instead of doing per-version handling.
---
 pdns/ixfrdist-web.cc |  2 +-
 pdns/webserver.cc    |  6 +++---
 pdns/ws-auth.cc      |  4 ++--
 pdns/ws-recursor.cc  | 12 ++++++------
 4 files changed, 12 insertions(+), 12 deletions(-)

Index: pdns-recursor-4.3.5/webserver.cc
===================================================================
--- pdns-recursor-4.3.5.orig/webserver.cc
+++ pdns-recursor-4.3.5/webserver.cc
@@ -107,7 +107,7 @@ static void bareHandlerWrapper(WebServer
 
 void WebServer::registerBareHandler(const string& url, HandlerFunction handler)
 {
-  YaHTTP::THandlerFunction f = boost::bind(&bareHandlerWrapper, handler, _1, _2);
+  YaHTTP::THandlerFunction f = std::bind(&bareHandlerWrapper, handler, std::placeholders::_1, std::placeholders::_2);
   YaHTTP::Router::Any(url, f);
 }
 
@@ -179,7 +179,7 @@ void WebServer::apiWrapper(WebServer::Ha
 }
 
 void WebServer::registerApiHandler(const string& url, HandlerFunction handler, bool allowPassword) {
-  HandlerFunction f = boost::bind(&WebServer::apiWrapper, this, handler, _1, _2, allowPassword);
+  HandlerFunction f = std::bind(&WebServer::apiWrapper, this, handler, std::placeholders::_1, std::placeholders::_2, allowPassword);
   registerBareHandler(url, f);
 }
 
@@ -196,7 +196,7 @@ void WebServer::webWrapper(WebServer::Ha
 }
 
 void WebServer::registerWebHandler(const string& url, HandlerFunction handler) {
-  HandlerFunction f = boost::bind(&WebServer::webWrapper, this, handler, _1, _2);
+  HandlerFunction f = std::bind(&WebServer::webWrapper, this, handler, std::placeholders::_1, std::placeholders::_2);
   registerBareHandler(url, f);
 }
 
Index: pdns-recursor-4.3.5/ws-recursor.cc
===================================================================
--- pdns-recursor-4.3.5.orig/ws-recursor.cc
+++ pdns-recursor-4.3.5/ws-recursor.cc
@@ -382,9 +382,9 @@ static void apiServerCacheFlush(HttpRequ
   DNSName canon = apiNameToDNSName(req->getvars["domain"]);
   bool subtree = (req->getvars.count("subtree") > 0 && req->getvars["subtree"].compare("true") == 0);
 
-  int count = broadcastAccFunction<uint64_t>(boost::bind(pleaseWipeCache, canon, subtree));
-  count += broadcastAccFunction<uint64_t>(boost::bind(pleaseWipePacketCache, canon, subtree));
-  count += broadcastAccFunction<uint64_t>(boost::bind(pleaseWipeAndCountNegCache, canon, subtree));
+  int count = broadcastAccFunction<uint64_t>(std::bind(pleaseWipeCache, canon, subtree));
+  count += broadcastAccFunction<uint64_t>(std::bind(pleaseWipePacketCache, canon, subtree));
+  count += broadcastAccFunction<uint64_t>(std::bind(pleaseWipeAndCountNegCache, canon, subtree));
   resp->setBody(Json::object {
     { "count", count },
     { "result", "Flushed cache." }
@@ -664,7 +664,7 @@ void AsyncServerNewConnectionMT(void *p)
 void AsyncServer::asyncWaitForConnections(FDMultiplexer* fdm, const newconnectioncb_t& callback)
 {
   d_asyncNewConnectionCallback = callback;
-  fdm->addReadFD(d_server_socket.getHandle(), boost::bind(&AsyncServer::newConnection, this));
+  fdm->addReadFD(d_server_socket.getHandle(), std::bind(&AsyncServer::newConnection, this));
 }
 
 void AsyncServer::newConnection()