return true;
}
+// NOLINTNEXTLINE(readability-convert-member-functions-to-static): this is a stub, the real one is not that simple..
std::string DNSQuestion::getTrailingData() const
{
return "";
}
+// NOLINTNEXTLINE(readability-convert-member-functions-to-static): this is a stub, the real one is not that simple..
bool DNSQuestion::setTrailingData(const std::string& tail)
{
return false;
}
-bool DNSDistSNMPAgent::sendDNSTrap(const DNSQuestion& dq, const std::string& reason)
+// NOLINTNEXTLINE(readability-convert-member-functions-to-static): this is a stub, the real one is not that simple..
+bool DNSDistSNMPAgent::sendDNSTrap(const DNSQuestion& dnsQuestion, const std::string& reason)
{
return false;
}
{
}
-DNSAction::Action SpoofAction::operator()(DNSQuestion* dq, std::string* ruleresult) const
+DNSAction::Action SpoofAction::operator()(DNSQuestion* dnsQuestion, std::string* ruleresult) const
{
return DNSAction::Action::None;
}
-bool setupDoTProtocolNegotiation(std::shared_ptr<TLSCtx>&)
+bool setupDoTProtocolNegotiation(std::shared_ptr<TLSCtx>& tlsCtx)
{
+ (void)tlsCtx;
return true;
}
+// NOLINTNEXTLINE(performance-unnecessary-value-param): this is a stub, the real one is not that simple and the performance does not matter
void responderThread(std::shared_ptr<DownstreamState> dss)
{
}
static InternalQueryState ids;
ids.origDest = ComboAddress("127.0.0.1:53");
ids.origRemote = ComboAddress("192.0.2.1:42");
- ids.qname = providedName ? *providedName : qname;
+ ids.qname = providedName != nullptr ? *providedName : qname;
ids.qtype = QType::A;
ids.qclass = QClass::IN;
ids.protocol = dnsdist::Protocol::DoUDP;
ids.queryRealTime.start();
- DNSQuestion dq(ids, packet);
- return dq;
+ DNSQuestion dnsQuestion(ids, packet);
+ return dnsQuestion;
}
static void benchPolicy(const ServerPolicy& pol)
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
ServerPolicy::NumberedServerVector servers;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
servers.at(idx - 1).second->setUp();
/* we need to have a weight of at least 1000 to get an optimal repartition with the consistent hashing algo */
servers.at(idx - 1).second->setWeight(1000);
sw.start();
for (size_t idx = 0; idx < 1000; idx++) {
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
}
}
cerr << pol.name << " took " << std::to_string(sw.udiff()) << " us for " << names.size() << endl;
BOOST_AUTO_TEST_CASE(test_firstAvailable)
{
- auto dq = getDQ();
+ auto dnsQuestion = getDQ();
ServerPolicy pol{"firstAvailable", firstAvailable, false};
ServerPolicy::NumberedServerVector servers;
- servers.push_back({1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53"))});
+ servers.emplace_back(1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53")));
/* servers start as 'down' */
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server == nullptr);
/* mark the server as 'up' */
servers.at(0).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server != nullptr);
/* add a second server, we should still get the first one */
- servers.push_back({2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53"))});
- server = pol.getSelectedBackend(servers, dq);
+ servers.emplace_back(2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53")));
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(0).second);
/* mark the first server as 'down', second as 'up' */
servers.at(0).second->setDown();
servers.at(1).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
BOOST_AUTO_TEST_CASE(test_firstAvailableWithOrderAndQPS)
{
- auto dq = getDQ();
+ auto dnsQuestion = getDQ();
size_t qpsLimit = 10;
ServerPolicy pol{"firstAvailable", firstAvailable, false};
ServerPolicy::NumberedServerVector servers;
- servers.push_back({1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53"))});
- servers.push_back({2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53"))});
+ servers.emplace_back(1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53")));
+ servers.emplace_back(2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53")));
/* Second server has a higher order, so most queries should be routed to the first (remember that
we need to keep them ordered!).
However the first server has a QPS limit at 10 qps, so any query above that should be routed
/* the first queries under the QPS limit should be
sent to the first server */
for (size_t idx = 0; idx < qpsLimit; idx++) {
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(0).second);
server->incQueriesCount();
/* then to the second server */
for (size_t idx = 0; idx < 100; idx++) {
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
server->incQueriesCount();
BOOST_AUTO_TEST_CASE(test_roundRobin)
{
- auto dq = getDQ();
+ auto dnsQuestion = getDQ();
ServerPolicy pol{"roundrobin", roundrobin, false};
ServerPolicy::NumberedServerVector servers;
/* selecting a server on an empty server list */
g_roundrobinFailOnNoServer = false;
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server == nullptr);
- servers.push_back({1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53"))});
+ servers.emplace_back(1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53")));
/* servers start as 'down' but the RR policy returns a server unless g_roundrobinFailOnNoServer is set */
g_roundrobinFailOnNoServer = true;
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server == nullptr);
g_roundrobinFailOnNoServer = false;
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server != nullptr);
/* mark the server as 'up' */
servers.at(0).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server != nullptr);
/* add a second server, we should get the first one then the second one */
- servers.push_back({2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53"))});
+ servers.emplace_back(2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53")));
servers.at(1).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(0).second);
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
/* mark the first server as 'down', second as 'up' */
servers.at(0).second->setDown();
servers.at(1).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
/* mark all servers 'up' */
- for (auto& s : servers) {
- s.second->setUp();
- serversMap[s.second] = 0;
+ for (auto& serv : servers) {
+ serv.second->setUp();
+ serversMap[serv.second] = 0;
}
for (size_t idx = 0; idx < 1000; idx++) {
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
BOOST_AUTO_TEST_CASE(test_leastOutstanding)
{
- auto dq = getDQ();
+ auto dnsQuestion = getDQ();
ServerPolicy pol{"leastOutstanding", leastOutstanding, false};
ServerPolicy::NumberedServerVector servers;
- servers.push_back({1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53"))});
+ servers.emplace_back(1, std::make_shared<DownstreamState>(ComboAddress("192.0.2.1:53")));
/* servers start as 'down' */
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server == nullptr);
/* mark the server as 'up' */
servers.at(0).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_CHECK(server != nullptr);
/* add a second server, we should still get the first one */
- servers.push_back({2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53"))});
- server = pol.getSelectedBackend(servers, dq);
+ servers.emplace_back(2, std::make_shared<DownstreamState>(ComboAddress("192.0.2.2:53")));
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(0).second);
/* mark the first server as 'down', second as 'up' */
servers.at(0).second->setDown();
servers.at(1).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
servers.at(0).second->setUp();
servers.at(0).second->outstanding = 42;
servers.at(1).second->setUp();
- server = pol.getSelectedBackend(servers, dq);
+ server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(server != nullptr);
BOOST_CHECK(server == servers.at(1).second);
BOOST_AUTO_TEST_CASE(test_wrandom)
{
- auto dq = getDQ();
+ auto dnsQuestion = getDQ();
ServerPolicy pol{"wrandom", wrandom, false};
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
benchPolicy(pol);
for (size_t idx = 0; idx < 1000; idx++) {
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
servers.at(servers.size() - 1).second->d_config.d_weight = 100;
for (size_t idx = 0; idx < 1000; idx++) {
- auto server = pol.getSelectedBackend(servers, dq);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
BOOST_CHECK_EQUAL(total, 1000U);
auto last = servers.at(servers.size() - 1).second;
const auto got = serversMap[last];
- float expected = (1000 * 1.0 * last->d_config.d_weight) / totalW;
+ float expected = static_cast<float>(1000 * 1.0 * last->d_config.d_weight) / static_cast<float>(totalW);
BOOST_CHECK_GT(got, expected / 2);
BOOST_CHECK_LT(got, expected * 2);
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
ServerPolicy pol{"whashed", whashed, false};
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
benchPolicy(pol);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
/* request 1000 times the same name, we should go to the same server every time */
{
- auto dq = getDQ(&names.at(0));
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&names.at(0));
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
for (size_t idx = 0; idx < 1000; idx++) {
- BOOST_CHECK(pol.getSelectedBackend(servers, dq) == server);
+ BOOST_CHECK(pol.getSelectedBackend(servers, dnsQuestion) == server);
}
}
servers.at(servers.size() - 1).second->setWeight(100);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
BOOST_CHECK_EQUAL(total, names.size());
auto last = servers.at(servers.size() - 1).second;
const auto got = serversMap[last];
- float expected = (names.size() * 1.0 * last->d_config.d_weight) / totalW;
+ float expected = static_cast<float>(static_cast<double>(names.size()) * 1.0 * last->d_config.d_weight) / static_cast<float>(totalW);
BOOST_CHECK_GT(got, expected / 2);
BOOST_CHECK_LT(got, expected * 2);
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
ServerPolicy pol{"chashed", chashed, false};
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
/* we need to have a weight of at least 1000 to get an optimal repartition with the consistent hashing algo */
benchPolicy(pol);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
/* request 1000 times the same name, we should go to the same server every time */
{
- auto dq = getDQ(&names.at(0));
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&names.at(0));
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
for (size_t idx = 0; idx < 1000; idx++) {
- BOOST_CHECK(pol.getSelectedBackend(servers, dq) == server);
+ BOOST_CHECK(pol.getSelectedBackend(servers, dnsQuestion) == server);
}
}
servers.at(servers.size() - 1).second->setWeight(100000);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
BOOST_CHECK_EQUAL(total, names.size());
auto last = servers.at(servers.size() - 1).second;
const auto got = serversMap[last];
- float expected = (names.size() * 1.0 * last->d_config.d_weight) / totalW;
+ float expected = static_cast<float>(static_cast<double>(names.size()) * 1.0 * last->d_config.d_weight) / static_cast<float>(totalW);
BOOST_CHECK_GT(got, expected / 2);
BOOST_CHECK_LT(got, expected * 2);
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
static const std::string policySetupStr = R"foo(
setServerPolicyLua("luaroundrobin", luaroundrobin)
)foo";
resetLuaContext();
- g_lua.lock()->writeFunction("setServerPolicyLua", [](string name, ServerPolicy::policyfunc_t policy) {
+ g_lua.lock()->writeFunction("setServerPolicyLua", [](const string& name, const ServerPolicy::policyfunc_t& policy) {
g_policy.setState(ServerPolicy{name, policy, true});
});
g_lua.lock()->executeCode(policySetupStr);
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
BOOST_REQUIRE_EQUAL(servers.size(), 10U);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
static const std::string policySetupStr = R"foo(
)foo";
resetLuaContext();
g_lua.lock()->executeCode(getLuaFFIWrappers());
- g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](string name, ServerPolicy::ffipolicyfunc_t policy) {
+ g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](const string& name, const ServerPolicy::ffipolicyfunc_t& policy) {
g_policy.setState(ServerPolicy(name, policy));
});
g_lua.lock()->executeCode(policySetupStr);
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
BOOST_REQUIRE_EQUAL(servers.size(), 10U);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
static const std::string policySetupStr = R"foo(
)foo";
resetLuaContext();
g_lua.lock()->executeCode(getLuaFFIWrappers());
- g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](string name, ServerPolicy::ffipolicyfunc_t policy) {
+ g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](const string& name, const ServerPolicy::ffipolicyfunc_t& policy) {
g_policy.setState(ServerPolicy(name, policy));
});
g_lua.lock()->executeCode(policySetupStr);
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
BOOST_REQUIRE_EQUAL(servers.size(), 10U);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
static const std::string policySetupStr = R"foo(
)foo";
resetLuaContext();
g_lua.lock()->executeCode(getLuaFFIWrappers());
- g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](string name, ServerPolicy::ffipolicyfunc_t policy) {
+ g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](const string& name, const ServerPolicy::ffipolicyfunc_t& policy) {
g_policy.setState(ServerPolicy(name, policy));
});
g_lua.lock()->executeCode(policySetupStr);
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
}
BOOST_REQUIRE_EQUAL(servers.size(), 10U);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}
std::vector<DNSName> names;
names.reserve(1000);
for (size_t idx = 0; idx < 1000; idx++) {
- names.push_back(DNSName("powerdns-" + std::to_string(idx) + ".com."));
+ names.emplace_back("powerdns-" + std::to_string(idx) + ".com.");
}
static const std::string policySetupStr = R"foo(
)foo";
resetLuaContext();
g_lua.lock()->executeCode(getLuaFFIWrappers());
- g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](string name, ServerPolicy::ffipolicyfunc_t policy) {
+ g_lua.lock()->writeFunction("setServerPolicyLuaFFI", [](const string& name, const ServerPolicy::ffipolicyfunc_t& policy) {
g_policy.setState(ServerPolicy(name, policy));
});
g_lua.lock()->executeCode(policySetupStr);
ServerPolicy::NumberedServerVector servers;
std::map<std::shared_ptr<DownstreamState>, uint64_t> serversMap;
for (size_t idx = 1; idx <= 10; idx++) {
- servers.push_back({idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53"))});
+ servers.emplace_back(idx, std::make_shared<DownstreamState>(ComboAddress("192.0.2." + std::to_string(idx) + ":53")));
serversMap[servers.at(idx - 1).second] = 0;
servers.at(idx - 1).second->setUp();
/* we need to have a weight of at least 1000 to get an optimal repartition with the consistent hashing algo */
BOOST_REQUIRE_EQUAL(servers.size(), 10U);
for (const auto& name : names) {
- auto dq = getDQ(&name);
- auto server = pol.getSelectedBackend(servers, dq);
+ auto dnsQuestion = getDQ(&name);
+ auto server = pol.getSelectedBackend(servers, dnsQuestion);
BOOST_REQUIRE(serversMap.count(server) == 1);
++serversMap[server];
}