return false;
}
- d_qname = qname;
+ d_qname = std::move(qname);
d_id = dh->id;
d_valid = true;
setbuf(fp.get(), 0);
}
- std::atomic_store_explicit(&d_fp, fp, std::memory_order_release);
+ std::atomic_store_explicit(&d_fp, std::move(fp), std::memory_order_release);
return true;
}
setbuf(fp.get(), 0);
}
- std::atomic_store_explicit(&d_fp, fp, std::memory_order_release);
+ std::atomic_store_explicit(&d_fp, std::move(fp), std::memory_order_release);
return true;
}
std::string tags;
RemoteLogActionConfiguration config;
- config.logger = logger;
+ config.logger = std::move(logger);
config.alterQueryFunc = std::move(alterFunc);
getOptionalValue<std::string>(vars, "serverID", config.serverID);
getOptionalValue<std::string>(vars, "ipEncryptKey", config.ipEncryptKey);
std::string tags;
RemoteLogActionConfiguration config;
- config.logger = logger;
+ config.logger = std::move(logger);
config.alterResponseFunc = alterFunc;
config.includeCNAME = includeCNAME ? *includeCNAME : false;
getOptionalValue<std::string>(vars, "serverID", config.serverID);
/* SuffixMatchNode */
luaCtx.registerFunction<void (SuffixMatchNode::*)(const boost::variant<DNSName, std::string, LuaArray<DNSName>, LuaArray<std::string>> &name)>("add", [](SuffixMatchNode &smn, const boost::variant<DNSName, std::string, LuaArray<DNSName>, LuaArray<std::string>> &name) {
if (name.type() == typeid(DNSName)) {
- auto n = boost::get<DNSName>(name);
+ const auto& n = boost::get<DNSName>(name);
smn.add(n);
return;
}
if (name.type() == typeid(std::string)) {
- auto n = boost::get<std::string>(name);
+ const auto& n = boost::get<std::string>(name);
smn.add(n);
return;
}
if (name.type() == typeid(LuaArray<DNSName>)) {
- auto names = boost::get<LuaArray<DNSName>>(name);
+ const auto& names = boost::get<LuaArray<DNSName>>(name);
for (const auto& n : names) {
smn.add(n.second);
}
return;
}
if (name.type() == typeid(LuaArray<std::string>)) {
- auto names = boost::get<LuaArray<string>>(name);
+ const auto& names = boost::get<LuaArray<string>>(name);
for (const auto& n : names) {
smn.add(n.second);
}
return;
}
if (name.type() == typeid(string)) {
- auto n = boost::get<string>(name);
+ const auto& n = boost::get<string>(name);
DNSName d(n);
smn.remove(d);
return;
/* Netmask */
luaCtx.writeFunction("newNetmask", [](boost::variant<std::string,ComboAddress> s, boost::optional<uint8_t> bits) {
if (s.type() == typeid(ComboAddress)) {
- auto ca = boost::get<ComboAddress>(s);
+ const auto& ca = boost::get<ComboAddress>(s);
if (bits) {
return Netmask(ca, *bits);
}
return Netmask(ca);
}
else if (s.type() == typeid(std::string)) {
- auto str = boost::get<std::string>(s);
+ const auto& str = boost::get<std::string>(s);
return Netmask(str);
}
throw std::runtime_error("Invalid parameter passed to 'newNetmask()'");
auto& params = boost::get<string>(tmp);
config.d_pinnedPath = std::move(params);
}
- mapsConfig[name] = config;
+ mapsConfig[name] = std::move(config);
};
convertParamsToConfig("ipv4", BPFFilter::MapType::IPv4);
errlog("%s", g_outputBuffer);
}
else
- g_consoleKey = newkey;
+ g_consoleKey = std::move(newkey);
});
luaCtx.writeFunction("clearConsoleHistory", []() {
if (!got || expired) {
warnlog("Inserting dynamic block for %s for %d seconds: %s", capair.first.toString(), actualSeconds, msg);
}
- slow.insert(requestor).second = db;
+ slow.insert(requestor).second = std::move(db);
}
g_dynblockNMG.setState(slow);
});
/* TCP */
cs = std::make_unique<ClientState>(ComboAddress(addr, 443), true, reusePort, tcpFastOpenQueueSize, interface, cpus);
- cs->dnscryptCtx = ctx;
+ cs->dnscryptCtx = std::move(ctx);
if (tcpListenQueueSize > 0) {
cs->tcpListenQueueSize = tcpListenQueueSize;
}
password = boost::get<const string>((*opts)["password"]);
}
}
- result = std::make_shared<TLSCertKeyPair>(TLSCertKeyPair{cert, key, password});
+ result = std::make_shared<TLSCertKeyPair>(cert, std::move(key), std::move(password));
#endif
return result;
});
g_dohlocals.push_back(frontend);
auto cs = std::make_unique<ClientState>(frontend->d_tlsContext.d_addr, true, reusePort, tcpFastOpenQueueSize, interface, cpus);
- cs->dohFrontend = frontend;
+ cs->dohFrontend = std::move(frontend);
cs->d_additionalAddresses = std::move(additionalAddresses);
if (tcpListenQueueSize > 0) {
}
g_doqlocals.push_back(frontend);
auto cs = std::make_unique<ClientState>(frontend->d_local, false, reusePort, tcpFastOpenQueueSize, interface, cpus);
- cs->doqFrontend = frontend;
+ cs->doqFrontend = std::move(frontend);
cs->d_additionalAddresses = std::move(additionalAddresses);
g_frontends.push_back(std::move(cs));
}
if (params.size() == 1) {
- auto param = params.at(0);
+ const auto& param = params.at(0);
remote.sin4.sin_family = param.cs->local.sin4.sin_family;
/* used by HarvestDestinationAddress */
cmsgbuf_aligned cbuf;
}
}
- void attachFilter(shared_ptr<BPFFilter> bpf, int socket)
+ void attachFilter(shared_ptr<BPFFilter>& bpf, int socket)
{
detachFilter(socket);
}
}
- void attachFilter(shared_ptr<BPFFilter> bpf)
+ void attachFilter(shared_ptr<BPFFilter>& bpf)
{
detachFilter();
tempConfig.d_subjectName = resolver.target.toStringNoDot();
tempConfig.d_addr.sin4.sin_port = tempConfig.d_port;
- config = tempConfig;
+ config = std::move(tempConfig);
return true;
}
} else {
vinfolog("Setting default pool server selection policy to %s", policy->getName());
}
- pool->policy = policy;
+ pool->policy = std::move(policy);
}
void addServerToPool(pools_t& pools, const string& poolName, std::shared_ptr<DownstreamState> server)
ret << (fmt % "#" % "Serial" % "Version" % "From" % "To" ) << endl;
for (const auto& pair : ctx->getCertificates()) {
- const auto cert = pair->cert;
+ const auto& cert = pair->cert;
const DNSCryptExchangeVersion version = DNSCryptContext::getExchangeVersion(cert);
ret << (fmt % idx % cert.getSerial() % (version == DNSCryptExchangeVersion::VERSION1 ? 1 : 2) % DNSCryptContext::certificateDateToStr(cert.getTSStart()) % DNSCryptContext::certificateDateToStr(cert.getTSEnd())) << endl;
return dpo;
});
- luaCtx.registerMember<DNSName(dnsdist::DNSPacketOverlay::*)>(std::string("qname"), [](const dnsdist::DNSPacketOverlay& overlay) { return overlay.d_qname; });
+ luaCtx.registerMember<DNSName(dnsdist::DNSPacketOverlay::*)>(std::string("qname"), [](const dnsdist::DNSPacketOverlay& overlay) -> const DNSName& { return overlay.d_qname; });
luaCtx.registerMember<uint16_t(dnsdist::DNSPacketOverlay::*)>(std::string("qtype"), [](const dnsdist::DNSPacketOverlay& overlay) { return overlay.d_qtype; });
luaCtx.registerMember<uint16_t(dnsdist::DNSPacketOverlay::*)>(std::string("qclass"), [](const dnsdist::DNSPacketOverlay& overlay) { return overlay.d_qclass; });
luaCtx.registerMember<dnsheader(dnsdist::DNSPacketOverlay::*)>(std::string("dh"), [](const dnsdist::DNSPacketOverlay& overlay) { return overlay.d_header; });
return results;
});
- luaCtx.registerMember<DNSName(LuaRingEntry::*)>(std::string("qname"), [](const LuaRingEntry& entry) {
+ luaCtx.registerMember<DNSName(LuaRingEntry::*)>(std::string("qname"), [](const LuaRingEntry& entry) -> const DNSName& {
return entry.qname;
});
- luaCtx.registerMember<ComboAddress(LuaRingEntry::*)>(std::string("requestor"), [](const LuaRingEntry& entry) {
+ luaCtx.registerMember<ComboAddress(LuaRingEntry::*)>(std::string("requestor"), [](const LuaRingEntry& entry) -> const ComboAddress& {
return entry.requestor;
});
- luaCtx.registerMember<ComboAddress(LuaRingEntry::*)>(std::string("backend"), [](const LuaRingEntry& entry) {
+ luaCtx.registerMember<ComboAddress(LuaRingEntry::*)>(std::string("backend"), [](const LuaRingEntry& entry) -> const ComboAddress& {
return entry.ds;
});
return entry.when;
});
- luaCtx.registerMember<std::string(LuaRingEntry::*)>(std::string("macAddress"), [](const LuaRingEntry& entry) {
+ luaCtx.registerMember<std::string(LuaRingEntry::*)>(std::string("macAddress"), [](const LuaRingEntry& entry) -> const std::string& {
return entry.macAddr;
});
}
// set qname to new one
- dr->dr->ids.qname = parsed;
+ dr->dr->ids.qname = std::move(parsed);
dr->dr->ids.skipCache = true;
}
catch (const std::exception& e) {
uint16_t d_responseCode{0};
bool d_finished{false};
};
- void updateIO(IOState newState, FDMultiplexer::callbackfunc_t callback, bool noTTD = false);
+ void updateIO(IOState newState, const FDMultiplexer::callbackfunc_t& callback, bool noTTD = false);
void watchForRemoteHostClosingConnection();
void handleResponse(PendingRequest&& request);
void handleResponseError(PendingRequest&& request, const struct timeval& now);
}
}
-void DoHConnectionToBackend::updateIO(IOState newState, FDMultiplexer::callbackfunc_t callback, bool noTTD)
+void DoHConnectionToBackend::updateIO(IOState newState, const FDMultiplexer::callbackfunc_t& callback, bool noTTD)
{
struct timeval now
{
auto shared = std::dynamic_pointer_cast<DoHConnectionToBackend>(shared_from_this());
if (shared) {
if (newState == IOState::NeedRead) {
- d_ioState->update(newState, callback, shared, ttd);
+ d_ioState->update(newState, callback, std::move(shared), ttd);
}
else if (newState == IOState::NeedWrite) {
- d_ioState->update(newState, callback, shared, ttd);
+ d_ioState->update(newState, callback, std::move(shared), ttd);
}
}
}
if (!unknownContent) {
return false;
}
- auto raw = unknownContent->getRawContent();
+ const auto& raw = unknownContent->getRawContent();
query.d_ixfrQuerySerial = getSerialFromRawSOAContent(raw);
return true;
}
{
auto newAcceptContext = std::make_shared<DOHAcceptContext>();
setupAcceptContext(*newAcceptContext, *d_dsc, true);
- std::atomic_store_explicit(&d_dsc->accept_ctx, newAcceptContext, std::memory_order_release);
+ std::atomic_store_explicit(&d_dsc->accept_ctx, std::move(newAcceptContext), std::memory_order_release);
}
void H2ODOHFrontend::setup()
if (isWaitingForWrite()) {
d_isWaitingForWrite = false;
- d_mplexer.alterFDToRead(d_fd, callback, callbackData, ttd ? &*ttd : nullptr);
+ d_mplexer.alterFDToRead(d_fd, std::move(callback), callbackData, ttd ? &*ttd : nullptr);
DEBUGLOG(__PRETTY_FUNCTION__<<": alter from write to read FD "<<d_fd);
}
else {
- d_mplexer.addReadFD(d_fd, callback, callbackData, ttd ? &*ttd : nullptr);
+ d_mplexer.addReadFD(d_fd, std::move(callback), callbackData, ttd ? &*ttd : nullptr);
DEBUGLOG(__PRETTY_FUNCTION__<<": add read FD "<<d_fd);
}
if (isWaitingForRead()) {
d_isWaitingForRead = false;
- d_mplexer.alterFDToWrite(d_fd, callback, callbackData, ttd ? &*ttd : nullptr);
+ d_mplexer.alterFDToWrite(d_fd, std::move(callback), callbackData, ttd ? &*ttd : nullptr);
DEBUGLOG(__PRETTY_FUNCTION__<<": alter from read to write FD "<<d_fd);
}
else {
- d_mplexer.addWriteFD(d_fd, callback, callbackData, ttd ? &*ttd : nullptr);
+ d_mplexer.addWriteFD(d_fd, std::move(callback), callbackData, ttd ? &*ttd : nullptr);
DEBUGLOG(__PRETTY_FUNCTION__<<": add write FD "<<d_fd);
}
#ifndef DISABLE_OCSP_STAPLING
if (!config.d_ocspFiles.empty()) {
try {
- ocspResponses = libssl_load_ocsp_responses(config.d_ocspFiles, keyTypes, warnings);
+ ocspResponses = libssl_load_ocsp_responses(config.d_ocspFiles, std::move(keyTypes), warnings);
}
catch(const std::exception& e) {
throw std::runtime_error("Unable to load OCSP responses: " + std::string(e.what()));
setupDoHProtocolNegotiation(newCtx);
}
- std::atomic_store_explicit(&d_ctx, newCtx, std::memory_order_release);
+ std::atomic_store_explicit(&d_ctx, std::move(newCtx), std::memory_order_release);
#endif /* HAVE_DNS_OVER_TLS || HAVE_DNS_OVER_HTTPS */
return true;
}