From: Remi Gacogne Date: Fri, 21 Oct 2022 09:30:30 +0000 (+0200) Subject: dnsdist: Fix 'comparison of integer expressions of different signedness' warning X-Git-Tag: dnsdist-1.8.0-rc1~239^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=65c3c599a22528f7f87875a72aedbd5a97708074;p=thirdparty%2Fpdns.git dnsdist: Fix 'comparison of integer expressions of different signedness' warning We are making sure that our computation will not overflow the maximum value of a `time_t`, and we know that this maximum value is positive, so we can use a `size_t` to do the comparison. --- diff --git a/pdns/dnsdistdist/dnsdist-backend.cc b/pdns/dnsdistdist/dnsdist-backend.cc index c99d72101d..a8a065fc15 100644 --- a/pdns/dnsdistdist/dnsdist-backend.cc +++ b/pdns/dnsdistdist/dnsdist-backend.cc @@ -588,7 +588,7 @@ void DownstreamState::updateNextLazyHealthCheck(LazyHealthCheckStats& stats) const uint16_t failedTests = currentCheckFailures; size_t backOffCoeff = std::pow(2U, failedTests); time_t backOff = d_config.d_lazyHealthCheckMaxBackOff; - if ((std::numeric_limits::max() / d_config.d_lazyHealthCheckFailedInterval) >= backOffCoeff) { + if ((static_cast(std::numeric_limits::max()) / d_config.d_lazyHealthCheckFailedInterval) >= backOffCoeff) { backOff = d_config.d_lazyHealthCheckFailedInterval * backOffCoeff; if (backOff > d_config.d_lazyHealthCheckMaxBackOff || (std::numeric_limits::max() - now) <= backOff) { backOff = d_config.d_lazyHealthCheckMaxBackOff;