From: Remi Gacogne Date: Thu, 7 Jul 2022 10:50:40 +0000 (+0200) Subject: dnsdist: Use static arrays for the protocols, as suggested by Otto X-Git-Tag: rec-4.9.0-alpha0~18^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bb0e631257a1fc230ce73846680fdbf01d0f0b7c;p=thirdparty%2Fpdns.git dnsdist: Use static arrays for the protocols, as suggested by Otto --- diff --git a/pdns/dnsdist-protocols.cc b/pdns/dnsdist-protocols.cc index e6c47a6441..4fc02eeb63 100644 --- a/pdns/dnsdist-protocols.cc +++ b/pdns/dnsdist-protocols.cc @@ -27,7 +27,7 @@ namespace dnsdist { -const std::vector Protocol::s_names = { +const std::array Protocol::s_names = { "DoUDP", "DoTCP", "DNSCryptUDP", @@ -35,7 +35,7 @@ const std::vector Protocol::s_names = { "DoT", "DoH"}; -static const std::vector prettyNames = { +const std::array Protocol::s_prettyNames = { "Do53 UDP", "Do53 TCP", "DNSCrypt UDP", @@ -71,7 +71,7 @@ const std::string& Protocol::toString() const const std::string& Protocol::toPrettyString() const { - return prettyNames.at(static_cast(d_protocol)); + return s_prettyNames.at(static_cast(d_protocol)); } } diff --git a/pdns/dnsdist-protocols.hh b/pdns/dnsdist-protocols.hh index 981a8860d4..fbd51683b8 100644 --- a/pdns/dnsdist-protocols.hh +++ b/pdns/dnsdist-protocols.hh @@ -21,7 +21,7 @@ */ #pragma once -#include +#include #include namespace dnsdist @@ -58,6 +58,8 @@ public: private: typeenum d_protocol; - static const std::vector s_names; + static constexpr size_t s_numberOfProtocols = 6; + static const std::array s_names; + static const std::array s_prettyNames; }; }