]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - contrib/bind9/lib/dns/include/dns/stats.h
Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.
[FreeBSD/releng/7.2.git] / contrib / bind9 / lib / dns / include / dns / stats.h
1 /*
2  * Copyright (C) 2004, 2005  Internet Systems Consortium, Inc. ("ISC")
3  * Copyright (C) 2000, 2001  Internet Software Consortium.
4  *
5  * Permission to use, copy, modify, and distribute this software for any
6  * purpose with or without fee is hereby granted, provided that the above
7  * copyright notice and this permission notice appear in all copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11  * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15  * PERFORMANCE OF THIS SOFTWARE.
16  */
17
18 /* $Id: stats.h,v 1.5.18.4 2005/06/27 00:20:03 marka Exp $ */
19
20 #ifndef DNS_STATS_H
21 #define DNS_STATS_H 1
22
23 /*! \file */
24
25 #include <dns/types.h>
26
27 /*%
28  * Query statistics counter types.
29  */
30 typedef enum {
31         dns_statscounter_success = 0,    /*%< Successful lookup */
32         dns_statscounter_referral = 1,   /*%< Referral result */
33         dns_statscounter_nxrrset = 2,    /*%< NXRRSET result */
34         dns_statscounter_nxdomain = 3,   /*%< NXDOMAIN result */
35         dns_statscounter_recursion = 4,  /*%< Recursion was used */
36         dns_statscounter_failure = 5,    /*%< Some other failure */
37         dns_statscounter_duplicate = 6,  /*%< Duplicate query */
38         dns_statscounter_dropped = 7     /*%< Duplicate query */
39 } dns_statscounter_t;
40
41 #define DNS_STATS_NCOUNTERS 8
42
43 LIBDNS_EXTERNAL_DATA extern const char *dns_statscounter_names[];
44
45 isc_result_t
46 dns_stats_alloccounters(isc_mem_t *mctx, isc_uint64_t **ctrp);
47 /*%<
48  * Allocate an array of query statistics counters from the memory
49  * context 'mctx'.
50  */
51
52 void
53 dns_stats_freecounters(isc_mem_t *mctx, isc_uint64_t **ctrp);
54 /*%<
55  * Free an array of query statistics counters allocated from the memory
56  * context 'mctx'.
57  */
58
59 ISC_LANG_ENDDECLS
60
61 #endif /* DNS_STATS_H */