s_ecsScopeZero.source = scopeZeroMask;
}
+ static void clearECSStats()
+ {
+ s_ecsqueries.store(0);
+ s_ecsresponses.store(0);
+
+ for (size_t idx = 0; idx < 32; idx++) {
+ SyncRes::s_ecsResponsesBySubnetSize4[idx].store(0);
+ }
+
+ for (size_t idx = 0; idx < 128; idx++) {
+ SyncRes::s_ecsResponsesBySubnetSize6[idx].store(0);
+ }
+ }
+
explicit SyncRes(const struct timeval& now);
int beginResolve(const DNSName &qname, const QType &qtype, uint16_t qclass, vector<DNSRecord>&ret);
static std::atomic<uint64_t> s_unreachables;
static std::atomic<uint64_t> s_ecsqueries;
static std::atomic<uint64_t> s_ecsresponses;
+ static std::map<uint8_t, std::atomic<uint64_t>> s_ecsResponsesBySubnetSize4;
+ static std::map<uint8_t, std::atomic<uint64_t>> s_ecsResponsesBySubnetSize6;
static string s_serverID;
static unsigned int s_minimumTTL;