mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-03 16:15:27 +00:00
Split off the named.conf grammar into a source module separate
from the configuration parser, to facilitate reuse of the latter for parsing non-BIND configuration files
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named-checkconf.c,v 1.19 2001/10/02 22:53:35 gson Exp $ */
|
||||
/* $Id: named-checkconf.c,v 1.20 2002/01/04 02:31:57 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <isc/string.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <bind9/check.h>
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: aclconf.c,v 1.27 2001/04/12 21:02:46 tale Exp $ */
|
||||
/* $Id: aclconf.c,v 1.28 2002/01/04 02:31:59 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
#include <isc/string.h> /* Required for HP/UX (and others?) */
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <dns/acl.h>
|
||||
#include <dns/fixedname.h>
|
||||
#include <dns/log.h>
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: config.c,v 1.23 2001/11/30 01:58:44 gson Exp $ */
|
||||
/* $Id: config.c,v 1.24 2002/01/04 02:32:00 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <isc/sockaddr.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <dns/fixedname.h>
|
||||
#include <dns/name.h>
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: controlconf.c,v 1.36 2001/11/27 21:51:31 bwelling Exp $ */
|
||||
/* $Id: controlconf.c,v 1.37 2002/01/04 02:32:01 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <isc/timer.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <bind9/check.h>
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwresd.c,v 1.39 2001/11/30 01:58:46 gson Exp $ */
|
||||
/* $Id: lwresd.c,v 1.40 2002/01/04 02:32:02 gson Exp $ */
|
||||
|
||||
/*
|
||||
* Main program for the Lightweight Resolver Daemon.
|
||||
@@ -38,7 +38,7 @@
|
||||
#include <isc/task.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <dns/log.h>
|
||||
#include <dns/result.h>
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.c,v 1.366 2001/12/01 00:39:22 marka Exp $ */
|
||||
/* $Id: server.c,v 1.367 2002/01/04 02:32:04 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
#include <isc/timer.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <bind9/check.h>
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: rndc.c,v 1.89 2001/12/01 00:34:20 marka Exp $ */
|
||||
/* $Id: rndc.c,v 1.90 2002/01/04 02:32:06 gson Exp $ */
|
||||
|
||||
/*
|
||||
* Principal Author: DCL
|
||||
@@ -38,7 +38,7 @@
|
||||
#include <isc/thread.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <isccc/alist.h>
|
||||
#include <isccc/base64.h>
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: cfg_test.c,v 1.12 2001/10/22 23:50:31 bwelling Exp $ */
|
||||
/* $Id: cfg_test.c,v 1.13 2002/01/04 02:32:07 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <isc/string.h>
|
||||
#include <isc/util.h>
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
#include <isccfg/namedconf.h>
|
||||
|
||||
#include <dns/log.h>
|
||||
|
||||
|
@@ -45,8 +45,6 @@ options {
|
||||
use-id-pool <boolean>; // obsolete
|
||||
use-ixfr <boolean>;
|
||||
version ( <quoted_string> | none );
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-recursion { <address_match_element>; ... };
|
||||
allow-v6-synthesis { <address_match_element>; ... };
|
||||
sortlist { <address_match_element>; ... };
|
||||
@@ -62,8 +60,6 @@ options {
|
||||
additional-from-cache <boolean>;
|
||||
query-source <querysource4>;
|
||||
query-source-v6 <querysource6>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ];
|
||||
cleaning-interval <integer>;
|
||||
min-roots <integer>; // not implemented
|
||||
lame-ttl <integer>;
|
||||
@@ -73,9 +69,14 @@ options {
|
||||
max-cache-size <size_no_default>;
|
||||
check-names <string> <string>; // not implemented
|
||||
cache-file <quoted_string>;
|
||||
suppress-initial-notify <boolean>; // not yet implemented
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-notify { <address_match_element>; ... };
|
||||
notify <notifytype>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ];
|
||||
also-notify [ port <integer> ] { ( <ipv4_address> | <ipv6_address>
|
||||
) [ port <integer> ]; ... };
|
||||
dialup <dialuptype>;
|
||||
@@ -109,11 +110,11 @@ acl <string> { <address_match_element>; ... };
|
||||
|
||||
logging {
|
||||
channel <string> {
|
||||
file <logfile>;
|
||||
file <log_file>;
|
||||
syslog <optional_facility>;
|
||||
null;
|
||||
stderr;
|
||||
severity <logseverity>;
|
||||
severity <log_severity>;
|
||||
print-time <boolean>;
|
||||
print-severity <boolean>;
|
||||
print-category <boolean>;
|
||||
@@ -132,7 +133,6 @@ view <string> <optional_class> {
|
||||
zone <string> <optional_class> {
|
||||
type ( master | slave | stub | hint | forward );
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
file <quoted_string>;
|
||||
ixfr-base <quoted_string>; // obsolete
|
||||
ixfr-tmp-file <quoted_string>; // obsolete
|
||||
@@ -146,7 +146,13 @@ view <string> <optional_class> {
|
||||
check-names <string>; // not implemented
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-notify { <address_match_element>; ... };
|
||||
notify <notifytype>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | *
|
||||
) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer>
|
||||
| * ) ];
|
||||
also-notify [ port <integer> ] { ( <ipv4_address> |
|
||||
<ipv6_address> ) [ port <integer> ]; ... };
|
||||
dialup <dialuptype>;
|
||||
@@ -183,8 +189,6 @@ view <string> <optional_class> {
|
||||
};
|
||||
trusted-keys { <string> <integer> <integer> <integer>
|
||||
<quoted_string>; ... };
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-recursion { <address_match_element>; ... };
|
||||
allow-v6-synthesis { <address_match_element>; ... };
|
||||
sortlist { <address_match_element>; ... };
|
||||
@@ -200,8 +204,6 @@ view <string> <optional_class> {
|
||||
additional-from-cache <boolean>;
|
||||
query-source <querysource4>;
|
||||
query-source-v6 <querysource6>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ];
|
||||
cleaning-interval <integer>;
|
||||
min-roots <integer>; // not implemented
|
||||
lame-ttl <integer>;
|
||||
@@ -211,9 +213,14 @@ view <string> <optional_class> {
|
||||
max-cache-size <size_no_default>;
|
||||
check-names <string> <string>; // not implemented
|
||||
cache-file <quoted_string>;
|
||||
suppress-initial-notify <boolean>; // not yet implemented
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-notify { <address_match_element>; ... };
|
||||
notify <notifytype>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ];
|
||||
also-notify [ port <integer> ] { ( <ipv4_address> | <ipv6_address>
|
||||
) [ port <integer> ]; ... };
|
||||
dialup <dialuptype>;
|
||||
@@ -253,7 +260,6 @@ key <string> {
|
||||
zone <string> <optional_class> {
|
||||
type ( master | slave | stub | hint | forward );
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
file <quoted_string>;
|
||||
ixfr-base <quoted_string>; // obsolete
|
||||
ixfr-tmp-file <quoted_string>; // obsolete
|
||||
@@ -266,7 +272,11 @@ zone <string> <optional_class> {
|
||||
check-names <string>; // not implemented
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
allow-notify { <address_match_element>; ... };
|
||||
notify <notifytype>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ];
|
||||
also-notify [ port <integer> ] { ( <ipv4_address> | <ipv6_address>
|
||||
) [ port <integer> ]; ... };
|
||||
dialup <dialuptype>;
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
|
||||
# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.7 2001/09/20 15:16:57 marka Exp $
|
||||
# $Id: Makefile.in,v 1.8 2002/01/04 02:32:10 gson Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -41,10 +41,10 @@ LIBS = @LIBS@
|
||||
SUBDIRS = include
|
||||
|
||||
# Alphabetically
|
||||
OBJS = log.@O@ parser.@O@ version.@O@
|
||||
OBJS = log.@O@ namedconf.@O@ parser.@O@ version.@O@
|
||||
|
||||
# Alphabetically
|
||||
SRCS = log.c parser.c version.c
|
||||
SRCS = log.c namedconf.c parser.c version.c
|
||||
|
||||
TARGETS = timestamp
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: cfg.h,v 1.30 2001/08/03 23:19:01 gson Exp $ */
|
||||
/* $Id: cfg.h,v 1.31 2002/01/04 02:32:14 gson Exp $ */
|
||||
|
||||
#ifndef ISCCFG_CFG_H
|
||||
#define ISCCFG_CFG_H 1
|
||||
@@ -28,7 +28,6 @@
|
||||
* This is the new, table-driven, YACC-free configuration file parser.
|
||||
*/
|
||||
|
||||
|
||||
/***
|
||||
*** Imports
|
||||
***/
|
||||
@@ -398,21 +397,6 @@ cfg_obj_log(cfg_obj_t *obj, isc_log_t *lctx, int level, const char *fmt, ...)
|
||||
* with the file name(s) and line number where 'obj' was defined.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Configuration object types.
|
||||
*/
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_namedconf;
|
||||
/* A complete named.conf file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndcconf;
|
||||
/* A complete rndc.conf file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndckey;
|
||||
/* A complete rndc.key file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_keyref;
|
||||
/* A key reference, used as an ACL element */
|
||||
|
||||
ISC_LANG_ENDDECLS
|
||||
|
||||
#endif /* ISCCFG_CFG_H */
|
||||
|
44
lib/isccfg/include/isccfg/namedconf.h
Normal file
44
lib/isccfg/include/isccfg/namedconf.h
Normal file
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
|
||||
* DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
|
||||
* INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
|
||||
* FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: namedconf.h,v 1.1 2002/01/04 02:32:15 gson Exp $ */
|
||||
|
||||
#ifndef ISCCFG_NAMEDCONF_H
|
||||
#define ISCCFG_NAMEDCONF_H 1
|
||||
|
||||
/*
|
||||
* This module defines the named.conf, rndc.conf, and rndc.key grammars.
|
||||
*/
|
||||
|
||||
#include <isccfg/cfg.h>
|
||||
|
||||
/*
|
||||
* Configuration object types.
|
||||
*/
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_namedconf;
|
||||
/* A complete named.conf file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndcconf;
|
||||
/* A complete rndc.conf file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_rndckey;
|
||||
/* A complete rndc.key file. */
|
||||
|
||||
LIBISCCFG_EXTERNAL_DATA extern cfg_type_t cfg_type_keyref;
|
||||
/* A key reference, used as an ACL element */
|
||||
|
||||
#endif /* ISCCFG_CFG_H */
|
1573
lib/isccfg/namedconf.c
Normal file
1573
lib/isccfg/namedconf.c
Normal file
File diff suppressed because it is too large
Load Diff
2614
lib/isccfg/parser.c
2614
lib/isccfg/parser.c
File diff suppressed because it is too large
Load Diff
@@ -2073,8 +2073,10 @@
|
||||
./lib/isccfg/include/isccfg/cfg.h C 2000,2001
|
||||
./lib/isccfg/include/isccfg/check.h C 2001
|
||||
./lib/isccfg/include/isccfg/log.h C 2001
|
||||
./lib/isccfg/include/isccfg/namedconf.h C 2001,2002
|
||||
./lib/isccfg/include/isccfg/version.h C 2001
|
||||
./lib/isccfg/log.c C 2001
|
||||
./lib/isccfg/namedconf.c C 2001,2002
|
||||
./lib/isccfg/parser.c C 2000,2001
|
||||
./lib/isccfg/version.c C 1998,1999,2000,2001
|
||||
./lib/isccfg/win32/DLLMain.c C 2001
|
||||
|
Reference in New Issue
Block a user