1/*
2 * Copyright (C) 2004-2007, 2009, 2010  Internet Systems Consortium, Inc. ("ISC")
3 * Copyright (C) 2002  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/* $Id: namedconf.h,v 1.18 2010/08/11 18:14:20 each Exp $ */
19
20#ifndef ISCCFG_NAMEDCONF_H
21#define ISCCFG_NAMEDCONF_H 1
22
23/*! \file isccfg/namedconf.h
24 * \brief
25 * This module defines the named.conf, rndc.conf, and rndc.key grammars.
26 */
27
28#include <isccfg/cfg.h>
29
30/*
31 * Configuration object types.
32 */
33LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_namedconf;
34/*%< A complete named.conf file. */
35
36LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_bindkeys;
37/*%< A bind.keys file. */
38
39LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_newzones;
40/*%< A new-zones file (for zones added by 'rndc addzone'). */
41
42LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_addzoneconf;
43/*%< A single zone passed via the addzone rndc command. */
44
45LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndcconf;
46/*%< A complete rndc.conf file. */
47
48LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndckey;
49/*%< A complete rndc.key file. */
50
51LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_sessionkey;
52/*%< A complete session.key file. */
53
54LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_keyref;
55/*%< A key reference, used as an ACL element */
56
57LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_acl;
58/*%< A complete ACL */
59
60LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_bracketed_aml;
61/*%< A complete bracketed address match list */
62
63LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_category;
64/*%< A complete logging category statement */
65
66LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_channel;
67/*%< A complete logging channel statement */
68
69LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_debuglevel;
70/*%< Log debug level */
71
72LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_destinationlist;
73/*%< A logging category destination list */
74
75LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_grant;
76/*%< A complete update policy list entry */
77
78LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_listenon;
79/*%< A complete listen-on statement */
80
81LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_logging;
82/*%< A complete logging statement */
83
84LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_logfile;
85/*%< Log file destination */
86
87LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_matchname;
88/*%< Update policy match name */
89
90LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_matchtype;
91/*%< Update policy match type */
92
93LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_mode;
94/*%< Update policy mode */
95
96LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_options;
97/*%< Configuration options */
98
99LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_portiplist;
100/*%< A list of socket addresses with an optional port */
101
102LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rrtypelist;
103/*%< Update policy resource record type list */
104
105LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_bracketed_sockaddrlist;
106/*%< A bracketed socket address list */
107
108LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_updatepolicy;
109/*%< A list of update policies */
110
111LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_view;
112/*%< A complete view statement */
113
114LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_viewopts;
115/*%< View options */
116
117LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_zone;
118/*%< A complete zone statement */
119
120LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_zoneopts;
121/*%< Zone options */
122
123#endif /* ISCCFG_NAMEDCONF_H */
124