static inline void inc_stats(dns_zone_t *zone, isc_statscounter_t counter) { isc_stats_increment(ns_g_server->nsstats, counter); if (zone != NULL) { isc_stats_t *zonestats = dns_zone_getrequeststats(zone); if (zonestats != NULL) isc_stats_increment(zonestats, counter); } }
static inline void update_rdatasetstats (dns_stats_t * stats, dns_rdatastatstype_t rrsettype, isc_boolean_t increment) { int counter; dns_rdatatype_t rdtype; if ((DNS_RDATASTATSTYPE_ATTR (rrsettype) & DNS_RDATASTATSTYPE_ATTR_NXDOMAIN) != 0) { counter = rdtypecounter_nxdomain; } else { rdtype = DNS_RDATASTATSTYPE_BASE (rrsettype); if (rdtype == dns_rdatatype_dlv) counter = (int) rdtypecounter_dlv; else if (rdtype > dns_rdatatype_any) counter = (int) rdtypecounter_others; else counter = (int) rdtype; if ((DNS_RDATASTATSTYPE_ATTR (rrsettype) & DNS_RDATASTATSTYPE_ATTR_NXRRSET) != 0) counter += rdtypecounter_max; } if (increment) isc_stats_increment (stats->counters, counter); else isc_stats_decrement (stats->counters, counter); }
void dns_rdatatypestats_increment (dns_stats_t * stats, dns_rdatatype_t type) { int counter; REQUIRE (DNS_STATS_VALID (stats) && stats->type == dns_statstype_rdtype); if (type == dns_rdatatype_dlv) counter = rdtypecounter_dlv; else if (type > dns_rdatatype_any) counter = rdtypecounter_others; else counter = (int) type; isc_stats_increment (stats->counters, (isc_statscounter_t) counter); }
void dns_opcodestats_increment (dns_stats_t * stats, dns_opcode_t code) { REQUIRE (DNS_STATS_VALID (stats) && stats->type == dns_statstype_opcode); isc_stats_increment (stats->counters, (isc_statscounter_t) code); }
/*% * Increment/Decrement methods */ void dns_generalstats_increment (dns_stats_t * stats, isc_statscounter_t counter) { REQUIRE (DNS_STATS_VALID (stats) && stats->type == dns_statstype_general); isc_stats_increment (stats->counters, counter); }
/*% * Increment/Decrement methods */ void ns_stats_increment(ns_stats_t *stats, isc_statscounter_t counter) { REQUIRE(NS_STATS_VALID(stats)); isc_stats_increment(stats->counters, counter); }