diff --git a/pdns/dnspacket.cc b/pdns/dnspacket.cc index 6c12370505a7..6aaf755c8e44 100644 --- a/pdns/dnspacket.cc +++ b/pdns/dnspacket.cc @@ -23,6 +23,7 @@ #include "config.h" #endif #include "utility.hh" +#include #include #include #include @@ -243,13 +244,11 @@ bool DNSPacket::couldBeCached() const unsigned int DNSPacket::getMinTTL() { - unsigned int minttl = UINT_MAX; - for(const DNSZoneRecord& rr : d_rrs) { - if (rr.dr.d_ttl < minttl) - minttl = rr.dr.d_ttl; + auto iter = std::min_element(d_rrs.begin(), d_rrs.end()); + if (iter != d_rrs.end()) { + return iter->dr.d_ttl; } - - return minttl; + return UINT_MAX; } bool DNSPacket::isEmpty() diff --git a/pdns/dnsparser.cc b/pdns/dnsparser.cc index 0c1fce359b36..4cda7b6d54dd 100644 --- a/pdns/dnsparser.cc +++ b/pdns/dnsparser.cc @@ -1016,9 +1016,7 @@ uint32_t getDNSPacketMinTTL(const char* packet, size_t length, bool* seenAuthSOA } const uint32_t ttl = dpm.get32BitInt(); - if (result > ttl) { - result = ttl; - } + result = std::min(result, ttl); dpm.skipRData(); } diff --git a/pdns/dnsparser.hh b/pdns/dnsparser.hh index 412dafb6c8f0..8b3264dcea47 100644 --- a/pdns/dnsparser.hh +++ b/pdns/dnsparser.hh @@ -451,6 +451,10 @@ struct DNSZoneRecord bool auth{true}; bool disabled{false}; DNSRecord dr; + + bool operator<(const DNSZoneRecord& other) const { + return dr.d_ttl < other.dr.d_ttl; + } }; class UnknownRecordContent : public DNSRecordContent diff --git a/pdns/lua-record.cc b/pdns/lua-record.cc index 1cb8355b4611..32b8bab5582c 100644 --- a/pdns/lua-record.cc +++ b/pdns/lua-record.cc @@ -1181,18 +1181,14 @@ static void setupLuaRecords(LuaContext& lua) // NOLINT(readability-function-cogn * @example ifportup(443, { '1.2.3.4', '5.4.3.2' })" */ lua.writeFunction("ifportup", [](int port, const boost::variant& ips, const boost::optional> options) { - if (port < 0) { - port = 0; - } - if (port > std::numeric_limits::max()) { - port = std::numeric_limits::max(); - } + port = std::max(port, 0); + port = std::min(port, static_cast(std::numeric_limits::max())); - auto checker = [](const ComboAddress& addr, const opts_t& opts) { - return g_up.isUp(addr, opts); - }; - return genericIfUp(ips, options, checker, port); - }); + auto checker = [](const ComboAddress& addr, const opts_t& opts) { + return g_up.isUp(addr, opts); + }; + return genericIfUp(ips, options, checker, port); + }); lua.writeFunction("ifurlextup", [](const vector >& ipurls, boost::optional options) { vector candidates; diff --git a/pdns/sillyrecords.cc b/pdns/sillyrecords.cc index cc04a3c29f39..a6edc189e290 100644 --- a/pdns/sillyrecords.cc +++ b/pdns/sillyrecords.cc @@ -2,6 +2,7 @@ #include "config.h" #endif +#include #include #include "utility.hh" @@ -46,8 +47,7 @@ static uint8_t precsize_aton(const char **strptr) break; mantissa = cmval / poweroften[exponent]; - if (mantissa > 9) - mantissa = 9; + mantissa = std::min(mantissa, 9); retval = (mantissa << 4) | exponent;