From: Otto Moerbeek Date: Wed, 28 Sep 2022 10:10:29 +0000 (+0200) Subject: Fix auto_causes_copy coverity reports. X-Git-Tag: rec-4.9.0-alpha0~10^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=160a19ade403fc14c37cdc0b403350e95a7f042b;p=thirdparty%2Fpdns.git Fix auto_causes_copy coverity reports. In once case we actually want a copy so annotate it. Coverity 380098, 380102, 380103, 380106, 380107, 280109, 380111, 380112, 380113, 380117 --- diff --git a/pdns/dnscrypt.cc b/pdns/dnscrypt.cc index 539789fdff..6db8613a3d 100644 --- a/pdns/dnscrypt.cc +++ b/pdns/dnscrypt.cc @@ -289,7 +289,7 @@ void DNSCryptContext::addNewCertificate(std::shared_ptr { auto certs = d_certs.write_lock(); - for (auto pair : *certs) { + for (const auto& pair : *certs) { if (pair->cert.getSerial() == newCert->cert.getSerial()) { if (reload) { /* on reload we just assume that this is the same certificate */ @@ -356,7 +356,7 @@ std::vector> DNSCryptContext::getCertif void DNSCryptContext::markActive(uint32_t serial) { - for (auto pair : *d_certs.write_lock()) { + for (const auto& pair : *d_certs.write_lock()) { if (pair->active == false && pair->cert.getSerial() == serial) { pair->active = true; return; @@ -367,7 +367,7 @@ void DNSCryptContext::markActive(uint32_t serial) void DNSCryptContext::markInactive(uint32_t serial) { - for (auto pair : *d_certs.write_lock()) { + for (const auto& pair : *d_certs.write_lock()) { if (pair->active == true && pair->cert.getSerial() == serial) { pair->active = false; return; diff --git a/pdns/dnsdist-lua-inspection.cc b/pdns/dnsdist-lua-inspection.cc index 6e02284c74..6f59a6c423 100644 --- a/pdns/dnsdist-lua-inspection.cc +++ b/pdns/dnsdist-lua-inspection.cc @@ -298,7 +298,8 @@ void setupLuaInspection(LuaContext& luaCtx) unsigned int lab = *labels; for (const auto& shard : g_rings.d_shards) { auto rl = shard->queryRing.lock(); - for(auto a : *rl) { + // coverity[auto_causes_copy] + for (auto a : *rl) { a.name.trimToLabels(lab); counts[a.name]++; total++; diff --git a/pdns/dnsdist-web.cc b/pdns/dnsdist-web.cc index 7aba31a28b..603a8e5bee 100644 --- a/pdns/dnsdist-web.cc +++ b/pdns/dnsdist-web.cc @@ -1412,7 +1412,7 @@ static void handleAllowFrom(const YaHTTP::Request& req, YaHTTP::Response& resp) auto aclList = doc["value"]; if (aclList.is_array()) { - for (auto value : aclList.array_items()) { + for (const auto& value : aclList.array_items()) { try { nmg.addMask(value.string_value()); } catch (NetmaskException &e) { diff --git a/pdns/dnsdist.cc b/pdns/dnsdist.cc index 7cc858474d..353f19feb5 100644 --- a/pdns/dnsdist.cc +++ b/pdns/dnsdist.cc @@ -1865,7 +1865,7 @@ static void maintThread() } const time_t now = time(nullptr); - for (auto pair : caches) { + for (const auto& pair : caches) { /* shall we keep expired entries ? */ if (pair.second == true) { continue; diff --git a/pdns/dnsdistdist/dnsdist-lua-bindings-dnscrypt.cc b/pdns/dnsdistdist/dnsdist-lua-bindings-dnscrypt.cc index fd3fb39e53..50e34f2527 100644 --- a/pdns/dnsdistdist/dnsdist-lua-bindings-dnscrypt.cc +++ b/pdns/dnsdistdist/dnsdist-lua-bindings-dnscrypt.cc @@ -56,7 +56,7 @@ void setupLuaBindingsDNSCrypt(LuaContext& luaCtx, bool client) if (ctx != nullptr) { size_t idx = 1; - for (auto pair : ctx->getCertificates()) { + for (const auto& pair : ctx->getCertificates()) { result.push_back({idx++, pair}); } } @@ -101,7 +101,7 @@ void setupLuaBindingsDNSCrypt(LuaContext& luaCtx, bool client) boost::format fmt("%1$-3d %|5t|%2$-8d %|10t|%3$-7d %|20t|%4$-21.21s %|41t|%5$-21.21s"); ret << (fmt % "#" % "Serial" % "Version" % "From" % "To" ) << endl; - for (auto pair : ctx->getCertificates()) { + for (const auto& pair : ctx->getCertificates()) { const auto cert = pair->cert; const DNSCryptExchangeVersion version = DNSCryptContext::getExchangeVersion(cert); diff --git a/pdns/dnsdistdist/dnsdist-lua-bindings-packetcache.cc b/pdns/dnsdistdist/dnsdist-lua-bindings-packetcache.cc index 120edf30e5..0873ff648a 100644 --- a/pdns/dnsdistdist/dnsdist-lua-bindings-packetcache.cc +++ b/pdns/dnsdistdist/dnsdist-lua-bindings-packetcache.cc @@ -95,7 +95,7 @@ void setupLuaBindingsPacketCache(LuaContext& luaCtx, bool client) } } if (vars->count("skipOptions")) { - for (auto option: boost::get>(vars->at("skipOptions"))) { + for (const auto& option: boost::get>(vars->at("skipOptions"))) { optionsToSkip.insert(option.second); } }