From 8f4f5186d974d7bbc6af65ceb45543e4c344fafc Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Thu, 18 Feb 2016 17:06:40 +0100 Subject: [PATCH] dnsdist: Always create the default pool, clean related log messages --- pdns/dnsdist.cc | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/pdns/dnsdist.cc b/pdns/dnsdist.cc index e5c2402a03..f705c994b4 100644 --- a/pdns/dnsdist.cc +++ b/pdns/dnsdist.cc @@ -462,7 +462,8 @@ std::shared_ptr createPoolIfNotExists(pools_t& pools, const string& pool = it->second; } else { - vinfolog("Creating pool %s", poolName); + if (!poolName.empty()) + vinfolog("Creating pool %s", poolName); pool = std::make_shared(); pools.insert(std::pair >(poolName, pool)); } @@ -473,19 +474,21 @@ void addServerToPool(pools_t& pools, const string& poolName, std::shared_ptr pool = createPoolIfNotExists(pools, poolName); unsigned int count = pool->servers.size(); - vinfolog("Adding server to pool %s", poolName); + if (!poolName.empty()) + vinfolog("Adding server to pool %s", poolName); + else + vinfolog("Adding server to default pool"); pool->servers.push_back(make_pair(++count, server)); } void removeServerFromPool(pools_t& pools, const string& poolName, std::shared_ptr server) { - vinfolog("Removing from pool %s", poolName); - pools_t::iterator poolIt = pools.find(poolName); - if (poolIt == pools.end()) { - throw std::out_of_range("No pool named " + poolName); - } + std::shared_ptr pool = getPool(pools, poolName); - std::shared_ptr pool = poolIt->second; + if (!poolName.empty()) + vinfolog("Removing server from pool %s", poolName); + else + vinfolog("Removing server from default pool"); for (NumberedVector >::iterator it = pool->servers.begin(); it != pool->servers.end(); it++) { if (it->second == server) { @@ -1384,6 +1387,8 @@ try t(); auto localPools = g_pools.getCopy(); + /* create the default pool no matter what */ + createPoolIfNotExists(localPools, ""); if(g_cmdLine.remotes.size()) { for(const auto& address : g_cmdLine.remotes) { auto ret=std::make_shared(ComboAddress(address, 53)); -- 2.47.2