1 /*
2 * Copyright (C) 2004-2007, 2009, 2011-2015 Internet Systems Consortium, Inc. ("ISC")
3 * Copyright (C) 1999-2001, 2003 Internet Software Consortium.
4 *
5 * Permission to use, copy, modify, and/or 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 /*! \file */
19
20 /* Principal Authors: DCL */
21
22 #include <config.h>
23
24 #include <isc/util.h>
25
26 #include <dns/log.h>
27
28 /*%
29 * When adding a new category, be sure to add the appropriate
30 * \#define to <dns/log.h>.
31 */
32 LIBDNS_EXTERNAL_DATA isc_logcategory_t dns_categories[] = {
33 { "notify", 0 },
34 { "database", 0 },
35 { "security", 0 },
36 { "_placeholder", 0 },
37 { "dnssec", 0 },
38 { "resolver", 0 },
39 { "xfer-in", 0 },
40 { "xfer-out", 0 },
41 { "dispatch", 0 },
42 { "lame-servers", 0 },
43 { "delegation-only", 0 },
44 { "edns-disabled", 0 },
45 { "rpz", 0 },
46 { "rate-limit", 0 },
47 { "cname", 0 },
48 { "spill", 0 },
49 { NULL, 0 }
50 };
51
52 /*%
53 * When adding a new module, be sure to add the appropriate
54 * \#define to <dns/log.h>.
55 */
56 LIBDNS_EXTERNAL_DATA isc_logmodule_t dns_modules[] = {
57 { "dns/db", 0 },
58 { "dns/rbtdb", 0 },
59 { "dns/rbtdb64", 0 },
60 { "dns/rbt", 0 },
61 { "dns/rdata", 0 },
62 { "dns/master", 0 },
63 { "dns/message", 0 },
64 { "dns/cache", 0 },
65 { "dns/config", 0 },
66 { "dns/resolver", 0 },
67 { "dns/zone", 0 },
68 { "dns/journal", 0 },
69 { "dns/adb", 0 },
70 { "dns/xfrin", 0 },
71 { "dns/xfrout", 0 },
72 { "dns/acl", 0 },
73 { "dns/validator", 0 },
74 { "dns/dispatch", 0 },
75 { "dns/request", 0 },
76 { "dns/masterdump", 0 },
77 { "dns/tsig", 0 },
78 { "dns/tkey", 0 },
79 { "dns/sdb", 0 },
80 { "dns/diff", 0 },
81 { "dns/hints", 0 },
82 { "dns/acache", 0 },
83 { "dns/dlz", 0 },
84 { "dns/dnssec", 0 },
85 { "dns/crypto", 0 },
86 { NULL, 0 }
87 };
88
89 LIBDNS_EXTERNAL_DATA isc_log_t *dns_lctx = NULL;
90
91 void
dns_log_init(isc_log_t * lctx)92 dns_log_init(isc_log_t *lctx) {
93 REQUIRE(lctx != NULL);
94
95 isc_log_registercategories(lctx, dns_categories);
96 isc_log_registermodules(lctx, dns_modules);
97 }
98
99 void
dns_log_setcontext(isc_log_t * lctx)100 dns_log_setcontext(isc_log_t *lctx) {
101 dns_lctx = lctx;
102 }
103