mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-30 22:15:20 +00:00
update docbook grammar, removing dnssec-looksaide
- this required modification to the code that generates grammar text for the documentation, because the "dnssec-lookaside" option spanned more than one line in doc/misc/options, so grepping out only the lines marked "// obsolete" didn't remove the whole option. this commit adds an option to cfg_test to print named.conf clauses only if they don't have the obsolete, ancient, test-only, or not-yet-implemented flags set.
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
|
||||
<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.named.conf">
|
||||
<info>
|
||||
<date>2019-06-28</date>
|
||||
<date>2019-08-07</date>
|
||||
</info>
|
||||
<refentryinfo>
|
||||
<corpname>ISC</corpname>
|
||||
@@ -154,7 +154,6 @@ logging {
|
||||
</literallayout>
|
||||
</refsection>
|
||||
|
||||
|
||||
<refsection><info><title>MANAGED-KEYS</title></info>
|
||||
<para>Deprecated - see DNSSEC-KEYS.</para>
|
||||
<literallayout class="normal">
|
||||
@@ -253,9 +252,6 @@ options {
|
||||
dnssec-accept-expired <replaceable>boolean</replaceable>;
|
||||
dnssec-dnskey-kskonly <replaceable>boolean</replaceable>;
|
||||
dnssec-loadkeys-interval <replaceable>integer</replaceable>;
|
||||
dnssec-lookaside ( <replaceable>string</replaceable>
|
||||
trust-anchor <replaceable>string</replaceable> |
|
||||
auto | no ); deprecated
|
||||
dnssec-must-be-secure <replaceable>string</replaceable> <replaceable>boolean</replaceable>;
|
||||
dnssec-secure-to-insecure <replaceable>boolean</replaceable>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
@@ -614,9 +610,6 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
initial-key ) <replaceable>integer</replaceable> <replaceable>integer</replaceable>
|
||||
<replaceable>integer</replaceable> <replaceable>quoted_string</replaceable>; ... };
|
||||
dnssec-loadkeys-interval <replaceable>integer</replaceable>;
|
||||
dnssec-lookaside ( <replaceable>string</replaceable>
|
||||
trust-anchor <replaceable>string</replaceable> |
|
||||
auto | no ); deprecated
|
||||
dnssec-must-be-secure <replaceable>string</replaceable> <replaceable>boolean</replaceable>;
|
||||
dnssec-secure-to-insecure <replaceable>boolean</replaceable>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
@@ -866,7 +859,6 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
masters [ port <replaceable>integer</replaceable> ] [ dscp <replaceable>integer</replaceable> ] { ( <replaceable>masters</replaceable>
|
||||
| <replaceable>ipv4_address</replaceable> [ port <replaceable>integer</replaceable> ] | <replaceable>ipv6_address</replaceable> [
|
||||
port <replaceable>integer</replaceable> ] ) [ key <replaceable>string</replaceable> ]; ... };
|
||||
max-ixfr-log-size ( default | unlimited |
|
||||
max-journal-size ( default | unlimited | <replaceable>sizeval</replaceable> );
|
||||
max-records <replaceable>integer</replaceable>;
|
||||
max-refresh-time <replaceable>integer</replaceable>;
|
||||
@@ -886,7 +878,6 @@ view <replaceable>string</replaceable> [ <replaceable>class</replaceable> ] {
|
||||
notify-source-v6 ( <replaceable>ipv6_address</replaceable> | * ) [ port ( <replaceable>integer</replaceable>
|
||||
| * ) ] [ dscp <replaceable>integer</replaceable> ];
|
||||
notify-to-soa <replaceable>boolean</replaceable>;
|
||||
pubkey <replaceable>integer</replaceable> <replaceable>integer</replaceable> <replaceable>integer</replaceable>
|
||||
request-expire <replaceable>boolean</replaceable>;
|
||||
request-ixfr <replaceable>boolean</replaceable>;
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
|
@@ -49,7 +49,8 @@ output(void *closure, const char *text, int textlen) {
|
||||
static void
|
||||
usage(void) {
|
||||
fprintf(stderr, "usage: cfg_test --rndc|--named "
|
||||
"[--grammar] [--memstats] conffile\n");
|
||||
"[--grammar] [--zonegrammar] [--active] "
|
||||
"[--memstats] conffile\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -67,6 +68,7 @@ main(int argc, char **argv) {
|
||||
bool memstats = false;
|
||||
char *filename = NULL;
|
||||
unsigned int zonetype = 0;
|
||||
unsigned int pflags = 0;
|
||||
|
||||
RUNTIME_CHECK(isc_mem_create(0, 0, &mctx) == ISC_R_SUCCESS);
|
||||
|
||||
@@ -98,7 +100,9 @@ main(int argc, char **argv) {
|
||||
usage();
|
||||
|
||||
while (argc > 1) {
|
||||
if (strcmp(argv[1], "--grammar") == 0) {
|
||||
if (strcmp(argv[1], "--active") == 0) {
|
||||
pflags |= CFG_PRINTER_ACTIVEONLY;
|
||||
} else if (strcmp(argv[1], "--grammar") == 0) {
|
||||
grammar = true;
|
||||
} else if (strcmp(argv[1], "--zonegrammar") == 0) {
|
||||
argv++, argc--;
|
||||
@@ -149,13 +153,14 @@ main(int argc, char **argv) {
|
||||
if (grammar) {
|
||||
if (type == NULL)
|
||||
usage();
|
||||
cfg_print_grammar(type, output, NULL);
|
||||
cfg_print_grammar(type, pflags, output, NULL);
|
||||
} else if (zonetype != 0) {
|
||||
cfg_print_zonegrammar(zonetype, output, NULL);
|
||||
cfg_print_zonegrammar(zonetype, pflags, output, NULL);
|
||||
} else {
|
||||
if (type == NULL || filename == NULL)
|
||||
usage();
|
||||
RUNTIME_CHECK(cfg_parser_create(mctx, lctx, &pctx) == ISC_R_SUCCESS);
|
||||
RUNTIME_CHECK(cfg_parser_create(mctx, lctx, &pctx) ==
|
||||
ISC_R_SUCCESS);
|
||||
|
||||
result = cfg_parse_file(pctx, filename, type, &cfg);
|
||||
|
||||
|
@@ -58,7 +58,7 @@
|
||||
<command>check-srv-cname</command> ( fail | warn | ignore );
|
||||
<command>check-wildcard</command> <replaceable>boolean</replaceable>;
|
||||
<command>clients-per-query</command> <replaceable>integer</replaceable>;
|
||||
<command>cookie-algorithm</command> ( aes | sha1 | sha256 );
|
||||
<command>cookie-algorithm</command> ( aes | siphash24 );
|
||||
<command>cookie-secret</command> <replaceable>string</replaceable>;
|
||||
<command>coresize</command> ( default | unlimited | <replaceable>sizeval</replaceable> );
|
||||
<command>datasize</command> ( default | unlimited | <replaceable>sizeval</replaceable> );
|
||||
@@ -89,9 +89,6 @@
|
||||
<command>dnssec-accept-expired</command> <replaceable>boolean</replaceable>;
|
||||
<command>dnssec-dnskey-kskonly</command> <replaceable>boolean</replaceable>;
|
||||
<command>dnssec-loadkeys-interval</command> <replaceable>integer</replaceable>;
|
||||
<command>dnssec-lookaside</command> ( <replaceable>string</replaceable>
|
||||
<command>trust-anchor</command> <replaceable>string</replaceable> |
|
||||
<command>auto</command> | no ); deprecated
|
||||
<command>dnssec-must-be-secure</command> <replaceable>string</replaceable> <replaceable>boolean</replaceable>;
|
||||
<command>dnssec-secure-to-insecure</command> <replaceable>boolean</replaceable>;
|
||||
<command>dnssec-update-mode</command> ( maintain | no-resign );
|
||||
|
@@ -33,26 +33,30 @@ options: FORCE
|
||||
if test -x ${CFG_TEST} ; \
|
||||
then \
|
||||
${CFG_TEST} --named --grammar > $@.raw ; \
|
||||
${CFG_TEST} --zonegrammar master > master.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar slave > slave.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar mirror > mirror.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar forward > forward.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar hint > hint.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar stub > stub.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar static-stub > static-stub.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar redirect > redirect.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar delegation-only > delegation-only.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar in-view > in-view.zoneopt ; \
|
||||
${PERL} ${srcdir}/sort-options.pl < $@.raw > $@.sorted ; \
|
||||
${PERL} ${srcdir}/format-options.pl < $@.sorted > $@.new ; \
|
||||
mv -f $@.new $@ ; \
|
||||
${CFG_TEST} --named --grammar --active > $@.raw ; \
|
||||
${PERL} ${srcdir}/sort-options.pl < $@.raw > $@.sorted ; \
|
||||
${PERL} ${srcdir}/format-options.pl < $@.sorted > $@.new ; \
|
||||
mv -f $@.new $@.active ; \
|
||||
rm -f $@.raw $@.sorted ; \
|
||||
${CFG_TEST} --zonegrammar master --active > master.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar slave --active > slave.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar mirror --active > mirror.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar forward --active > forward.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar hint --active > hint.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar stub --active > stub.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar static-stub --active > static-stub.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar redirect --active > redirect.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar delegation-only --active > delegation-only.zoneopt ; \
|
||||
${CFG_TEST} --zonegrammar in-view --active > in-view.zoneopt ; \
|
||||
else \
|
||||
rm -f $@.new $@.raw $@.sorted ; \
|
||||
fi
|
||||
|
||||
docbook: options
|
||||
${PERL} docbook-options.pl options > ${top_srcdir}/bin/named/named.conf.docbook
|
||||
${PERL} docbook-options.pl options.active > ${top_srcdir}/bin/named/named.conf.docbook
|
||||
${PERL} docbook-zoneopt.pl master.zoneopt > ${top_srcdir}/doc/arm/master.zoneopt.xml
|
||||
${PERL} docbook-zoneopt.pl slave.zoneopt > ${top_srcdir}/doc/arm/slave.zoneopt.xml
|
||||
${PERL} docbook-zoneopt.pl mirror.zoneopt > ${top_srcdir}/doc/arm/mirror.zoneopt.xml
|
||||
@@ -63,14 +67,14 @@ docbook: options
|
||||
${PERL} docbook-zoneopt.pl redirect.zoneopt > ${top_srcdir}/doc/arm/redirect.zoneopt.xml
|
||||
${PERL} docbook-zoneopt.pl delegation-only.zoneopt > ${top_srcdir}/doc/arm/delegation-only.zoneopt.xml
|
||||
${PERL} docbook-zoneopt.pl in-view.zoneopt > ${top_srcdir}/doc/arm/in-view.zoneopt.xml
|
||||
${PERL} docbook-grammars.pl options acl > ${top_srcdir}/doc/arm/acl.grammar.xml
|
||||
${PERL} docbook-grammars.pl options controls > ${top_srcdir}/doc/arm/controls.grammar.xml
|
||||
${PERL} docbook-grammars.pl options key > ${top_srcdir}/doc/arm/key.grammar.xml
|
||||
${PERL} docbook-grammars.pl options logging > ${top_srcdir}/doc/arm/logging.grammar.xml
|
||||
${PERL} docbook-grammars.pl options masters > ${top_srcdir}/doc/arm/masters.grammar.xml
|
||||
${PERL} docbook-grammars.pl options options > ${top_srcdir}/doc/arm/options.grammar.xml
|
||||
${PERL} docbook-grammars.pl options server > ${top_srcdir}/doc/arm/server.grammar.xml
|
||||
${PERL} docbook-grammars.pl options statistics-channels > ${top_srcdir}/doc/arm/statistics-channels.grammar.xml
|
||||
${PERL} docbook-grammars.pl options dnssec-keys > ${top_srcdir}/doc/arm/dnssec-keys.grammar.xml
|
||||
${PERL} docbook-grammars.pl options managed-keys > ${top_srcdir}/doc/arm/managed-keys.grammar.xml
|
||||
${PERL} docbook-grammars.pl options trusted-keys > ${top_srcdir}/doc/arm/trusted-keys.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active acl > ${top_srcdir}/doc/arm/acl.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active controls > ${top_srcdir}/doc/arm/controls.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active key > ${top_srcdir}/doc/arm/key.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active logging > ${top_srcdir}/doc/arm/logging.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active masters > ${top_srcdir}/doc/arm/masters.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active options > ${top_srcdir}/doc/arm/options.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active server > ${top_srcdir}/doc/arm/server.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active statistics-channels > ${top_srcdir}/doc/arm/statistics-channels.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active dnssec-keys > ${top_srcdir}/doc/arm/dnssec-keys.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active managed-keys > ${top_srcdir}/doc/arm/managed-keys.grammar.xml
|
||||
${PERL} docbook-grammars.pl options.active trusted-keys > ${top_srcdir}/doc/arm/trusted-keys.grammar.xml
|
||||
|
@@ -59,12 +59,6 @@ while (<FH>) {
|
||||
$display = 1
|
||||
}
|
||||
|
||||
if (m{// not.*implemented} || m{// obsolete} ||
|
||||
m{// ancient} || m{// test.*only})
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
s{ // not configured}{};
|
||||
s{ // non-operational}{};
|
||||
s{ // may occur multiple times,*}{};
|
||||
|
@@ -120,12 +120,6 @@ while (<FH>) {
|
||||
|
||||
my $blank = 0;
|
||||
while (<FH>) {
|
||||
if (m{// not.*implemented} || m{// obsolete} ||
|
||||
m{// ancient} || m{// test.*only})
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
s{ // not configured}{};
|
||||
s{ // non-operational}{};
|
||||
s{ (// )*may occur multiple times,*}{};
|
||||
@@ -140,22 +134,22 @@ while (<FH>) {
|
||||
<refsection><info><title>$HEADING</title></info>
|
||||
END
|
||||
|
||||
if ($1 eq "trusted-keys") {
|
||||
print <<END;
|
||||
if ($1 eq "trusted-keys") {
|
||||
print <<END;
|
||||
<para>Deprecated - see DNSSEC-KEYS.</para>
|
||||
END
|
||||
}
|
||||
}
|
||||
|
||||
if ($1 eq "managed-keys") {
|
||||
print <<END;
|
||||
if ($1 eq "managed-keys") {
|
||||
print <<END;
|
||||
<para>Deprecated - see DNSSEC-KEYS.</para>
|
||||
END
|
||||
}
|
||||
}
|
||||
|
||||
print <<END;
|
||||
<literallayout class="normal">
|
||||
END
|
||||
}
|
||||
}
|
||||
|
||||
if (m{^\s*$} && !$blank) {
|
||||
$blank = 1;
|
||||
|
@@ -44,12 +44,6 @@ print <<END;
|
||||
END
|
||||
|
||||
while (<FH>) {
|
||||
if (m{// not.*implemented} || m{// obsolete} ||
|
||||
m{// ancient} || m{// test.*only})
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
s{ // not configured}{};
|
||||
s{ // may occur multiple times,*}{};
|
||||
s{<([a-z0-9_-]+)>}{<replaceable>$1</replaceable>}g;
|
||||
|
@@ -44,7 +44,6 @@ zone <string> [ <class> ] {
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
nsec3-test-zone <boolean>; // test only
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
sig-signing-nodes <integer>;
|
||||
sig-signing-signatures <integer>;
|
||||
|
@@ -148,7 +148,7 @@ options {
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-lookaside ( <string>
|
||||
trust-anchor <string> |
|
||||
auto | no ); // may occur multiple times, deprecated
|
||||
auto | no ); // obsolete, may occur multiple times
|
||||
dnssec-must-be-secure <string> <boolean>; // may occur multiple times
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
@@ -193,7 +193,7 @@ options {
|
||||
fstrm-set-output-queue-model ( mpsc | spsc ); // not configured
|
||||
fstrm-set-output-queue-size <integer>; // not configured
|
||||
fstrm-set-reopen-interval <ttlval>; // not configured
|
||||
geoip-directory ( <quoted_string> | none ); // not configured
|
||||
geoip-directory ( <quoted_string> | none );
|
||||
geoip-use-ecs <boolean>; // obsolete
|
||||
glue-cache <boolean>;
|
||||
has-old-clients <boolean>; // ancient
|
||||
@@ -214,7 +214,7 @@ options {
|
||||
listen-on-v6 [ port <integer> ] [ dscp
|
||||
<integer> ] {
|
||||
<address_match_element>; ... }; // may occur multiple times
|
||||
lmdb-mapsize <sizeval>; // non-operational
|
||||
lmdb-mapsize <sizeval>;
|
||||
lock-file ( <quoted_string> | none );
|
||||
maintain-ixfr-base <boolean>; // ancient
|
||||
managed-keys-directory <quoted_string>;
|
||||
@@ -527,7 +527,7 @@ view <string> [ <class> ] {
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-lookaside ( <string>
|
||||
trust-anchor <string> |
|
||||
auto | no ); // may occur multiple times, deprecated
|
||||
auto | no ); // obsolete, may occur multiple times
|
||||
dnssec-must-be-secure <string> <boolean>; // may occur multiple times
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
@@ -565,7 +565,7 @@ view <string> [ <class> ] {
|
||||
}; // may occur multiple times
|
||||
key-directory <quoted_string>;
|
||||
lame-ttl <ttlval>;
|
||||
lmdb-mapsize <sizeval>; // non-operational
|
||||
lmdb-mapsize <sizeval>;
|
||||
maintain-ixfr-base <boolean>; // ancient
|
||||
managed-keys { <string> (
|
||||
static-key | initial-key
|
||||
|
867
doc/misc/options.active
Normal file
867
doc/misc/options.active
Normal file
@@ -0,0 +1,867 @@
|
||||
|
||||
This is a summary of the named.conf options supported by
|
||||
this version of BIND 9.
|
||||
|
||||
acl <string> { <address_match_element>; ... }; // may occur multiple times
|
||||
|
||||
controls {
|
||||
inet ( <ipv4_address> | <ipv6_address> |
|
||||
* ) [ port ( <integer> | * ) ] allow
|
||||
{ <address_match_element>; ... } [
|
||||
keys { <string>; ... } ] [ read-only
|
||||
<boolean> ]; // may occur multiple times
|
||||
unix <quoted_string> perm <integer>
|
||||
owner <integer> group <integer> [
|
||||
keys { <string>; ... } ] [ read-only
|
||||
<boolean> ]; // may occur multiple times
|
||||
}; // may occur multiple times
|
||||
|
||||
dlz <string> {
|
||||
database <string>;
|
||||
search <boolean>;
|
||||
}; // may occur multiple times
|
||||
|
||||
dnssec-keys { <string> ( static-key |
|
||||
initial-key ) <integer> <integer> <integer>
|
||||
<quoted_string>; ... }; // may occur multiple times
|
||||
|
||||
dyndb <string> <quoted_string> {
|
||||
<unspecified-text> }; // may occur multiple times
|
||||
|
||||
key <string> {
|
||||
algorithm <string>;
|
||||
secret <string>;
|
||||
}; // may occur multiple times
|
||||
|
||||
logging {
|
||||
category <string> { <string>; ... }; // may occur multiple times
|
||||
channel <string> {
|
||||
buffered <boolean>;
|
||||
file <quoted_string> [ versions ( unlimited | <integer> ) ]
|
||||
[ size <size> ] [ suffix ( increment | timestamp ) ];
|
||||
null;
|
||||
print-category <boolean>;
|
||||
print-severity <boolean>;
|
||||
print-time ( iso8601 | iso8601-utc | local | <boolean> );
|
||||
severity <log_severity>;
|
||||
stderr;
|
||||
syslog [ <syslog_facility> ];
|
||||
}; // may occur multiple times
|
||||
};
|
||||
|
||||
managed-keys { <string> ( static-key
|
||||
| initial-key ) <integer>
|
||||
<integer> <integer>
|
||||
<quoted_string>; ... }; // may occur multiple times, deprecated
|
||||
|
||||
masters <string> [ port <integer> ] [ dscp
|
||||
<integer> ] { ( <masters> | <ipv4_address> [
|
||||
port <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] ) [ key <string> ]; ... }; // may occur multiple times
|
||||
|
||||
options {
|
||||
allow-new-zones <boolean>;
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-query-cache { <address_match_element>; ... };
|
||||
allow-query-cache-on { <address_match_element>; ... };
|
||||
allow-query-on { <address_match_element>; ... };
|
||||
allow-recursion { <address_match_element>; ... };
|
||||
allow-recursion-on { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
also-notify [ port <integer> ] [ dscp <integer> ] { ( <masters> |
|
||||
<ipv4_address> [ port <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] ) [ key <string> ]; ... };
|
||||
alt-transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
alt-transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> |
|
||||
* ) ] [ dscp <integer> ];
|
||||
answer-cookie <boolean>;
|
||||
attach-cache <string>;
|
||||
auth-nxdomain <boolean>; // default changed
|
||||
auto-dnssec ( allow | maintain | off );
|
||||
automatic-interface-scan <boolean>;
|
||||
avoid-v4-udp-ports { <portrange>; ... };
|
||||
avoid-v6-udp-ports { <portrange>; ... };
|
||||
bindkeys-file <quoted_string>;
|
||||
blackhole { <address_match_element>; ... };
|
||||
cache-file <quoted_string>;
|
||||
catalog-zones { zone <string> [ default-masters [ port <integer> ]
|
||||
[ dscp <integer> ] { ( <masters> | <ipv4_address> [ port
|
||||
<integer> ] | <ipv6_address> [ port <integer> ] ) [ key
|
||||
<string> ]; ... } ] [ zone-directory <quoted_string> ] [
|
||||
in-memory <boolean> ] [ min-update-interval <ttlval> ]; ... };
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <boolean>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
check-mx-cname ( fail | warn | ignore );
|
||||
check-names ( primary | master |
|
||||
secondary | slave | response ) (
|
||||
fail | warn | ignore ); // may occur multiple times
|
||||
check-sibling <boolean>;
|
||||
check-spf ( warn | ignore );
|
||||
check-srv-cname ( fail | warn | ignore );
|
||||
check-wildcard <boolean>;
|
||||
clients-per-query <integer>;
|
||||
cookie-algorithm ( aes | siphash24 );
|
||||
cookie-secret <string>; // may occur multiple times
|
||||
coresize ( default | unlimited | <sizeval> );
|
||||
datasize ( default | unlimited | <sizeval> );
|
||||
deny-answer-addresses { <address_match_element>; ... } [
|
||||
except-from { <string>; ... } ];
|
||||
deny-answer-aliases { <string>; ... } [ except-from { <string>; ...
|
||||
} ];
|
||||
dialup ( notify | notify-passive | passive | refresh | <boolean> );
|
||||
directory <quoted_string>;
|
||||
disable-algorithms <string> { <string>;
|
||||
... }; // may occur multiple times
|
||||
disable-ds-digests <string> { <string>;
|
||||
... }; // may occur multiple times
|
||||
disable-empty-zone <string>; // may occur multiple times
|
||||
dns64 <netprefix> {
|
||||
break-dnssec <boolean>;
|
||||
clients { <address_match_element>; ... };
|
||||
exclude { <address_match_element>; ... };
|
||||
mapped { <address_match_element>; ... };
|
||||
recursive-only <boolean>;
|
||||
suffix <ipv6_address>;
|
||||
}; // may occur multiple times
|
||||
dns64-contact <string>;
|
||||
dns64-server <string>;
|
||||
dnskey-sig-validity <integer>;
|
||||
dnsrps-enable <boolean>; // not configured
|
||||
dnsrps-options { <unspecified-text> }; // not configured
|
||||
dnssec-accept-expired <boolean>;
|
||||
dnssec-dnskey-kskonly <boolean>;
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-must-be-secure <string> <boolean>; // may occur multiple times
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
dnssec-validation ( yes | no | auto );
|
||||
dnstap { ( all | auth | client | forwarder |
|
||||
resolver | update ) [ ( query | response ) ];
|
||||
... }; // not configured
|
||||
dnstap-identity ( <quoted_string> | none |
|
||||
hostname ); // not configured
|
||||
dnstap-output ( file | unix ) <quoted_string> [
|
||||
size ( unlimited | <size> ) ] [ versions (
|
||||
unlimited | <integer> ) ] [ suffix ( increment
|
||||
| timestamp ) ]; // not configured
|
||||
dnstap-version ( <quoted_string> | none ); // not configured
|
||||
dscp <integer>;
|
||||
dual-stack-servers [ port <integer> ] { ( <quoted_string> [ port
|
||||
<integer> ] [ dscp <integer> ] | <ipv4_address> [ port
|
||||
<integer> ] [ dscp <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] [ dscp <integer> ] ); ... };
|
||||
dump-file <quoted_string>;
|
||||
edns-udp-size <integer>;
|
||||
empty-contact <string>;
|
||||
empty-server <string>;
|
||||
empty-zones-enable <boolean>;
|
||||
fetch-quota-params <integer> <fixedpoint> <fixedpoint> <fixedpoint>;
|
||||
fetches-per-server <integer> [ ( drop | fail ) ];
|
||||
fetches-per-zone <integer> [ ( drop | fail ) ];
|
||||
files ( default | unlimited | <sizeval> );
|
||||
flush-zones-on-shutdown <boolean>;
|
||||
forward ( first | only );
|
||||
forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address>
|
||||
| <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
|
||||
fstrm-set-buffer-hint <integer>; // not configured
|
||||
fstrm-set-flush-timeout <integer>; // not configured
|
||||
fstrm-set-input-queue-size <integer>; // not configured
|
||||
fstrm-set-output-notify-threshold <integer>; // not configured
|
||||
fstrm-set-output-queue-model ( mpsc | spsc ); // not configured
|
||||
fstrm-set-output-queue-size <integer>; // not configured
|
||||
fstrm-set-reopen-interval <ttlval>; // not configured
|
||||
geoip-directory ( <quoted_string> | none );
|
||||
glue-cache <boolean>;
|
||||
heartbeat-interval <integer>;
|
||||
hostname ( <quoted_string> | none );
|
||||
inline-signing <boolean>;
|
||||
interface-interval <ttlval>;
|
||||
ixfr-from-differences ( primary | master | secondary | slave |
|
||||
<boolean> );
|
||||
keep-response-order { <address_match_element>; ... };
|
||||
key-directory <quoted_string>;
|
||||
lame-ttl <ttlval>;
|
||||
listen-on [ port <integer> ] [ dscp
|
||||
<integer> ] {
|
||||
<address_match_element>; ... }; // may occur multiple times
|
||||
listen-on-v6 [ port <integer> ] [ dscp
|
||||
<integer> ] {
|
||||
<address_match_element>; ... }; // may occur multiple times
|
||||
lmdb-mapsize <sizeval>;
|
||||
lock-file ( <quoted_string> | none );
|
||||
managed-keys-directory <quoted_string>;
|
||||
masterfile-format ( map | raw | text );
|
||||
masterfile-style ( full | relative );
|
||||
match-mapped-addresses <boolean>;
|
||||
max-cache-size ( default | unlimited | <sizeval> | <percentage> );
|
||||
max-cache-ttl <ttlval>;
|
||||
max-clients-per-query <integer>;
|
||||
max-journal-size ( default | unlimited | <sizeval> );
|
||||
max-ncache-ttl <ttlval>;
|
||||
max-records <integer>;
|
||||
max-recursion-depth <integer>;
|
||||
max-recursion-queries <integer>;
|
||||
max-refresh-time <integer>;
|
||||
max-retry-time <integer>;
|
||||
max-rsa-exponent-size <integer>;
|
||||
max-stale-ttl <ttlval>;
|
||||
max-transfer-idle-in <integer>;
|
||||
max-transfer-idle-out <integer>;
|
||||
max-transfer-time-in <integer>;
|
||||
max-transfer-time-out <integer>;
|
||||
max-udp-size <integer>;
|
||||
max-zone-ttl ( unlimited | <ttlval> );
|
||||
memstatistics <boolean>;
|
||||
memstatistics-file <quoted_string>;
|
||||
message-compression <boolean>;
|
||||
min-cache-ttl <ttlval>;
|
||||
min-ncache-ttl <ttlval>;
|
||||
min-refresh-time <integer>;
|
||||
min-retry-time <integer>;
|
||||
minimal-any <boolean>;
|
||||
minimal-responses ( no-auth | no-auth-recursive | <boolean> );
|
||||
multi-master <boolean>;
|
||||
new-zones-directory <quoted_string>;
|
||||
no-case-compress { <address_match_element>; ... };
|
||||
nocookie-udp-size <integer>;
|
||||
notify ( explicit | master-only | <boolean> );
|
||||
notify-delay <integer>;
|
||||
notify-rate <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ]
|
||||
[ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
nta-lifetime <ttlval>;
|
||||
nta-recheck <ttlval>;
|
||||
nxdomain-redirect <string>;
|
||||
pid-file ( <quoted_string> | none );
|
||||
port <integer>;
|
||||
preferred-glue <string>;
|
||||
prefetch <integer> [ <integer> ];
|
||||
provide-ixfr <boolean>;
|
||||
qname-minimization ( strict | relaxed | disabled | off );
|
||||
query-source ( ( [ address ] ( <ipv4_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv4_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
query-source-v6 ( ( [ address ] ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv6_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
querylog <boolean>;
|
||||
random-device ( <quoted_string> | none );
|
||||
rate-limit {
|
||||
all-per-second <integer>;
|
||||
errors-per-second <integer>;
|
||||
exempt-clients { <address_match_element>; ... };
|
||||
ipv4-prefix-length <integer>;
|
||||
ipv6-prefix-length <integer>;
|
||||
log-only <boolean>;
|
||||
max-table-size <integer>;
|
||||
min-table-size <integer>;
|
||||
nodata-per-second <integer>;
|
||||
nxdomains-per-second <integer>;
|
||||
qps-scale <integer>;
|
||||
referrals-per-second <integer>;
|
||||
responses-per-second <integer>;
|
||||
slip <integer>;
|
||||
window <integer>;
|
||||
};
|
||||
recursing-file <quoted_string>;
|
||||
recursion <boolean>;
|
||||
recursive-clients <integer>;
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
request-nsid <boolean>;
|
||||
require-server-cookie <boolean>;
|
||||
reserved-sockets <integer>;
|
||||
resolver-nonbackoff-tries <integer>;
|
||||
resolver-query-timeout <integer>;
|
||||
resolver-retry-interval <integer>;
|
||||
response-padding { <address_match_element>; ... } block-size
|
||||
<integer>;
|
||||
response-policy { zone <string> [ add-soa <boolean> ] [ log
|
||||
<boolean> ] [ max-policy-ttl <ttlval> ] [ min-update-interval
|
||||
<ttlval> ] [ policy ( cname | disabled | drop | given | no-op |
|
||||
nodata | nxdomain | passthru | tcp-only <quoted_string> ) ] [
|
||||
recursive-only <boolean> ] [ nsip-enable <boolean> ] [
|
||||
nsdname-enable <boolean> ]; ... } [ add-soa <boolean> ] [
|
||||
break-dnssec <boolean> ] [ max-policy-ttl <ttlval> ] [
|
||||
min-update-interval <ttlval> ] [ min-ns-dots <integer> ] [
|
||||
nsip-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ]
|
||||
[ recursive-only <boolean> ] [ nsip-enable <boolean> ] [
|
||||
nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [
|
||||
dnsrps-options { <unspecified-text> } ];
|
||||
root-delegation-only [ exclude { <string>; ... } ];
|
||||
root-key-sentinel <boolean>;
|
||||
rrset-order { [ class <string> ] [ type <string> ] [ name
|
||||
<quoted_string> ] <string> <string>; ... };
|
||||
secroots-file <quoted_string>;
|
||||
send-cookie <boolean>;
|
||||
serial-query-rate <integer>;
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
server-id ( <quoted_string> | none | hostname );
|
||||
servfail-ttl <ttlval>;
|
||||
session-keyalg <string>;
|
||||
session-keyfile ( <quoted_string> | none );
|
||||
session-keyname <string>;
|
||||
sig-signing-nodes <integer>;
|
||||
sig-signing-signatures <integer>;
|
||||
sig-signing-type <integer>;
|
||||
sig-validity-interval <integer> [ <integer> ];
|
||||
sortlist { <address_match_element>; ... };
|
||||
stacksize ( default | unlimited | <sizeval> );
|
||||
stale-answer-enable <boolean>;
|
||||
stale-answer-ttl <ttlval>;
|
||||
startup-notify-rate <integer>;
|
||||
statistics-file <quoted_string>;
|
||||
synth-from-dnssec <boolean>;
|
||||
tcp-advertised-timeout <integer>;
|
||||
tcp-clients <integer>;
|
||||
tcp-idle-timeout <integer>;
|
||||
tcp-initial-timeout <integer>;
|
||||
tcp-keepalive-timeout <integer>;
|
||||
tcp-listen-queue <integer>;
|
||||
tkey-dhkey <quoted_string> <integer>;
|
||||
tkey-domain <quoted_string>;
|
||||
tkey-gssapi-credential <quoted_string>;
|
||||
tkey-gssapi-keytab <quoted_string>;
|
||||
transfer-format ( many-answers | one-answer );
|
||||
transfer-message-size <integer>;
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
transfers-in <integer>;
|
||||
transfers-out <integer>;
|
||||
transfers-per-ns <integer>;
|
||||
trust-anchor-telemetry <boolean>; // experimental
|
||||
try-tcp-refresh <boolean>;
|
||||
update-check-ksk <boolean>;
|
||||
use-alt-transfer-source <boolean>;
|
||||
use-v4-udp-ports { <portrange>; ... };
|
||||
use-v6-udp-ports { <portrange>; ... };
|
||||
v6-bias <integer>;
|
||||
validate-except { <string>; ... };
|
||||
version ( <quoted_string> | none );
|
||||
zero-no-soa-ttl <boolean>;
|
||||
zero-no-soa-ttl-cache <boolean>;
|
||||
zone-statistics ( full | terse | none | <boolean> );
|
||||
};
|
||||
|
||||
plugin ( query ) <string> [ { <unspecified-text>
|
||||
} ]; // may occur multiple times
|
||||
|
||||
server <netprefix> {
|
||||
bogus <boolean>;
|
||||
edns <boolean>;
|
||||
edns-udp-size <integer>;
|
||||
edns-version <integer>;
|
||||
keys <server_key>;
|
||||
max-udp-size <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ]
|
||||
[ dscp <integer> ];
|
||||
padding <integer>;
|
||||
provide-ixfr <boolean>;
|
||||
query-source ( ( [ address ] ( <ipv4_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv4_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
query-source-v6 ( ( [ address ] ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv6_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
request-nsid <boolean>;
|
||||
send-cookie <boolean>;
|
||||
tcp-keepalive <boolean>;
|
||||
tcp-only <boolean>;
|
||||
transfer-format ( many-answers | one-answer );
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
transfers <integer>;
|
||||
}; // may occur multiple times
|
||||
|
||||
statistics-channels {
|
||||
inet ( <ipv4_address> | <ipv6_address> |
|
||||
* ) [ port ( <integer> | * ) ] [
|
||||
allow { <address_match_element>; ...
|
||||
} ]; // may occur multiple times
|
||||
}; // may occur multiple times
|
||||
|
||||
trusted-keys { <string> <integer>
|
||||
<integer> <integer>
|
||||
<quoted_string>; ... }; // may occur multiple times, deprecated
|
||||
|
||||
view <string> [ <class> ] {
|
||||
allow-new-zones <boolean>;
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-query-cache { <address_match_element>; ... };
|
||||
allow-query-cache-on { <address_match_element>; ... };
|
||||
allow-query-on { <address_match_element>; ... };
|
||||
allow-recursion { <address_match_element>; ... };
|
||||
allow-recursion-on { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
also-notify [ port <integer> ] [ dscp <integer> ] { ( <masters> |
|
||||
<ipv4_address> [ port <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] ) [ key <string> ]; ... };
|
||||
alt-transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
alt-transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> |
|
||||
* ) ] [ dscp <integer> ];
|
||||
attach-cache <string>;
|
||||
auth-nxdomain <boolean>; // default changed
|
||||
auto-dnssec ( allow | maintain | off );
|
||||
cache-file <quoted_string>;
|
||||
catalog-zones { zone <string> [ default-masters [ port <integer> ]
|
||||
[ dscp <integer> ] { ( <masters> | <ipv4_address> [ port
|
||||
<integer> ] | <ipv6_address> [ port <integer> ] ) [ key
|
||||
<string> ]; ... } ] [ zone-directory <quoted_string> ] [
|
||||
in-memory <boolean> ] [ min-update-interval <ttlval> ]; ... };
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <boolean>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
check-mx-cname ( fail | warn | ignore );
|
||||
check-names ( primary | master |
|
||||
secondary | slave | response ) (
|
||||
fail | warn | ignore ); // may occur multiple times
|
||||
check-sibling <boolean>;
|
||||
check-spf ( warn | ignore );
|
||||
check-srv-cname ( fail | warn | ignore );
|
||||
check-wildcard <boolean>;
|
||||
clients-per-query <integer>;
|
||||
deny-answer-addresses { <address_match_element>; ... } [
|
||||
except-from { <string>; ... } ];
|
||||
deny-answer-aliases { <string>; ... } [ except-from { <string>; ...
|
||||
} ];
|
||||
dialup ( notify | notify-passive | passive | refresh | <boolean> );
|
||||
disable-algorithms <string> { <string>;
|
||||
... }; // may occur multiple times
|
||||
disable-ds-digests <string> { <string>;
|
||||
... }; // may occur multiple times
|
||||
disable-empty-zone <string>; // may occur multiple times
|
||||
dlz <string> {
|
||||
database <string>;
|
||||
search <boolean>;
|
||||
}; // may occur multiple times
|
||||
dns64 <netprefix> {
|
||||
break-dnssec <boolean>;
|
||||
clients { <address_match_element>; ... };
|
||||
exclude { <address_match_element>; ... };
|
||||
mapped { <address_match_element>; ... };
|
||||
recursive-only <boolean>;
|
||||
suffix <ipv6_address>;
|
||||
}; // may occur multiple times
|
||||
dns64-contact <string>;
|
||||
dns64-server <string>;
|
||||
dnskey-sig-validity <integer>;
|
||||
dnsrps-enable <boolean>; // not configured
|
||||
dnsrps-options { <unspecified-text> }; // not configured
|
||||
dnssec-accept-expired <boolean>;
|
||||
dnssec-dnskey-kskonly <boolean>;
|
||||
dnssec-keys { <string> ( static-key |
|
||||
initial-key ) <integer> <integer>
|
||||
<integer> <quoted_string>; ... }; // may occur multiple times
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-must-be-secure <string> <boolean>; // may occur multiple times
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
dnssec-validation ( yes | no | auto );
|
||||
dnstap { ( all | auth | client | forwarder |
|
||||
resolver | update ) [ ( query | response ) ];
|
||||
... }; // not configured
|
||||
dual-stack-servers [ port <integer> ] { ( <quoted_string> [ port
|
||||
<integer> ] [ dscp <integer> ] | <ipv4_address> [ port
|
||||
<integer> ] [ dscp <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] [ dscp <integer> ] ); ... };
|
||||
dyndb <string> <quoted_string> {
|
||||
<unspecified-text> }; // may occur multiple times
|
||||
edns-udp-size <integer>;
|
||||
empty-contact <string>;
|
||||
empty-server <string>;
|
||||
empty-zones-enable <boolean>;
|
||||
fetch-quota-params <integer> <fixedpoint> <fixedpoint> <fixedpoint>;
|
||||
fetches-per-server <integer> [ ( drop | fail ) ];
|
||||
fetches-per-zone <integer> [ ( drop | fail ) ];
|
||||
forward ( first | only );
|
||||
forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address>
|
||||
| <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
|
||||
glue-cache <boolean>;
|
||||
inline-signing <boolean>;
|
||||
ixfr-from-differences ( primary | master | secondary | slave |
|
||||
<boolean> );
|
||||
key <string> {
|
||||
algorithm <string>;
|
||||
secret <string>;
|
||||
}; // may occur multiple times
|
||||
key-directory <quoted_string>;
|
||||
lame-ttl <ttlval>;
|
||||
lmdb-mapsize <sizeval>;
|
||||
managed-keys { <string> (
|
||||
static-key | initial-key
|
||||
) <integer> <integer>
|
||||
<integer>
|
||||
<quoted_string>; ... }; // may occur multiple times, deprecated
|
||||
masterfile-format ( map | raw | text );
|
||||
masterfile-style ( full | relative );
|
||||
match-clients { <address_match_element>; ... };
|
||||
match-destinations { <address_match_element>; ... };
|
||||
match-recursive-only <boolean>;
|
||||
max-cache-size ( default | unlimited | <sizeval> | <percentage> );
|
||||
max-cache-ttl <ttlval>;
|
||||
max-clients-per-query <integer>;
|
||||
max-journal-size ( default | unlimited | <sizeval> );
|
||||
max-ncache-ttl <ttlval>;
|
||||
max-records <integer>;
|
||||
max-recursion-depth <integer>;
|
||||
max-recursion-queries <integer>;
|
||||
max-refresh-time <integer>;
|
||||
max-retry-time <integer>;
|
||||
max-stale-ttl <ttlval>;
|
||||
max-transfer-idle-in <integer>;
|
||||
max-transfer-idle-out <integer>;
|
||||
max-transfer-time-in <integer>;
|
||||
max-transfer-time-out <integer>;
|
||||
max-udp-size <integer>;
|
||||
max-zone-ttl ( unlimited | <ttlval> );
|
||||
message-compression <boolean>;
|
||||
min-cache-ttl <ttlval>;
|
||||
min-ncache-ttl <ttlval>;
|
||||
min-refresh-time <integer>;
|
||||
min-retry-time <integer>;
|
||||
minimal-any <boolean>;
|
||||
minimal-responses ( no-auth | no-auth-recursive | <boolean> );
|
||||
multi-master <boolean>;
|
||||
new-zones-directory <quoted_string>;
|
||||
no-case-compress { <address_match_element>; ... };
|
||||
nocookie-udp-size <integer>;
|
||||
notify ( explicit | master-only | <boolean> );
|
||||
notify-delay <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ]
|
||||
[ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
nta-lifetime <ttlval>;
|
||||
nta-recheck <ttlval>;
|
||||
nxdomain-redirect <string>;
|
||||
plugin ( query ) <string> [ {
|
||||
<unspecified-text> } ]; // may occur multiple times
|
||||
preferred-glue <string>;
|
||||
prefetch <integer> [ <integer> ];
|
||||
provide-ixfr <boolean>;
|
||||
qname-minimization ( strict | relaxed | disabled | off );
|
||||
query-source ( ( [ address ] ( <ipv4_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv4_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
query-source-v6 ( ( [ address ] ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] ) | ( [ [ address ] ( <ipv6_address> | * ) ]
|
||||
port ( <integer> | * ) ) ) [ dscp <integer> ];
|
||||
rate-limit {
|
||||
all-per-second <integer>;
|
||||
errors-per-second <integer>;
|
||||
exempt-clients { <address_match_element>; ... };
|
||||
ipv4-prefix-length <integer>;
|
||||
ipv6-prefix-length <integer>;
|
||||
log-only <boolean>;
|
||||
max-table-size <integer>;
|
||||
min-table-size <integer>;
|
||||
nodata-per-second <integer>;
|
||||
nxdomains-per-second <integer>;
|
||||
qps-scale <integer>;
|
||||
referrals-per-second <integer>;
|
||||
responses-per-second <integer>;
|
||||
slip <integer>;
|
||||
window <integer>;
|
||||
};
|
||||
recursion <boolean>;
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
request-nsid <boolean>;
|
||||
require-server-cookie <boolean>;
|
||||
resolver-nonbackoff-tries <integer>;
|
||||
resolver-query-timeout <integer>;
|
||||
resolver-retry-interval <integer>;
|
||||
response-padding { <address_match_element>; ... } block-size
|
||||
<integer>;
|
||||
response-policy { zone <string> [ add-soa <boolean> ] [ log
|
||||
<boolean> ] [ max-policy-ttl <ttlval> ] [ min-update-interval
|
||||
<ttlval> ] [ policy ( cname | disabled | drop | given | no-op |
|
||||
nodata | nxdomain | passthru | tcp-only <quoted_string> ) ] [
|
||||
recursive-only <boolean> ] [ nsip-enable <boolean> ] [
|
||||
nsdname-enable <boolean> ]; ... } [ add-soa <boolean> ] [
|
||||
break-dnssec <boolean> ] [ max-policy-ttl <ttlval> ] [
|
||||
min-update-interval <ttlval> ] [ min-ns-dots <integer> ] [
|
||||
nsip-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ]
|
||||
[ recursive-only <boolean> ] [ nsip-enable <boolean> ] [
|
||||
nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [
|
||||
dnsrps-options { <unspecified-text> } ];
|
||||
root-delegation-only [ exclude { <string>; ... } ];
|
||||
root-key-sentinel <boolean>;
|
||||
rrset-order { [ class <string> ] [ type <string> ] [ name
|
||||
<quoted_string> ] <string> <string>; ... };
|
||||
send-cookie <boolean>;
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
server <netprefix> {
|
||||
bogus <boolean>;
|
||||
edns <boolean>;
|
||||
edns-udp-size <integer>;
|
||||
edns-version <integer>;
|
||||
keys <server_key>;
|
||||
max-udp-size <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | *
|
||||
) ] [ dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer>
|
||||
| * ) ] [ dscp <integer> ];
|
||||
padding <integer>;
|
||||
provide-ixfr <boolean>;
|
||||
query-source ( ( [ address ] ( <ipv4_address> | * ) [ port
|
||||
( <integer> | * ) ] ) | ( [ [ address ] (
|
||||
<ipv4_address> | * ) ] port ( <integer> | * ) ) ) [
|
||||
dscp <integer> ];
|
||||
query-source-v6 ( ( [ address ] ( <ipv6_address> | * ) [
|
||||
port ( <integer> | * ) ] ) | ( [ [ address ] (
|
||||
<ipv6_address> | * ) ] port ( <integer> | * ) ) ) [
|
||||
dscp <integer> ];
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
request-nsid <boolean>;
|
||||
send-cookie <boolean>;
|
||||
tcp-keepalive <boolean>;
|
||||
tcp-only <boolean>;
|
||||
transfer-format ( many-answers | one-answer );
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> |
|
||||
* ) ] [ dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] [ dscp <integer> ];
|
||||
transfers <integer>;
|
||||
}; // may occur multiple times
|
||||
servfail-ttl <ttlval>;
|
||||
sig-signing-nodes <integer>;
|
||||
sig-signing-signatures <integer>;
|
||||
sig-signing-type <integer>;
|
||||
sig-validity-interval <integer> [ <integer> ];
|
||||
sortlist { <address_match_element>; ... };
|
||||
stale-answer-enable <boolean>;
|
||||
stale-answer-ttl <ttlval>;
|
||||
synth-from-dnssec <boolean>;
|
||||
transfer-format ( many-answers | one-answer );
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
trust-anchor-telemetry <boolean>; // experimental
|
||||
trusted-keys { <string>
|
||||
<integer> <integer>
|
||||
<integer>
|
||||
<quoted_string>; ... }; // may occur multiple times, deprecated
|
||||
try-tcp-refresh <boolean>;
|
||||
update-check-ksk <boolean>;
|
||||
use-alt-transfer-source <boolean>;
|
||||
v6-bias <integer>;
|
||||
validate-except { <string>; ... };
|
||||
zero-no-soa-ttl <boolean>;
|
||||
zero-no-soa-ttl-cache <boolean>;
|
||||
zone <string> [ <class> ] {
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-query-on { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
also-notify [ port <integer> ] [ dscp <integer> ] { (
|
||||
<masters> | <ipv4_address> [ port <integer> ] |
|
||||
<ipv6_address> [ port <integer> ] ) [ key <string> ];
|
||||
... };
|
||||
alt-transfer-source ( <ipv4_address> | * ) [ port (
|
||||
<integer> | * ) ] [ dscp <integer> ];
|
||||
alt-transfer-source-v6 ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] [ dscp <integer> ];
|
||||
auto-dnssec ( allow | maintain | off );
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <boolean>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
check-mx-cname ( fail | warn | ignore );
|
||||
check-names ( fail | warn | ignore );
|
||||
check-sibling <boolean>;
|
||||
check-spf ( warn | ignore );
|
||||
check-srv-cname ( fail | warn | ignore );
|
||||
check-wildcard <boolean>;
|
||||
database <string>;
|
||||
delegation-only <boolean>;
|
||||
dialup ( notify | notify-passive | passive | refresh |
|
||||
<boolean> );
|
||||
dlz <string>;
|
||||
dnskey-sig-validity <integer>;
|
||||
dnssec-dnskey-kskonly <boolean>;
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
file <quoted_string>;
|
||||
forward ( first | only );
|
||||
forwarders [ port <integer> ] [ dscp <integer> ] { (
|
||||
<ipv4_address> | <ipv6_address> ) [ port <integer> ] [
|
||||
dscp <integer> ]; ... };
|
||||
in-view <string>;
|
||||
inline-signing <boolean>;
|
||||
ixfr-from-differences <boolean>;
|
||||
journal <quoted_string>;
|
||||
key-directory <quoted_string>;
|
||||
masterfile-format ( map | raw | text );
|
||||
masterfile-style ( full | relative );
|
||||
masters [ port <integer> ] [ dscp <integer> ] { ( <masters>
|
||||
| <ipv4_address> [ port <integer> ] | <ipv6_address> [
|
||||
port <integer> ] ) [ key <string> ]; ... };
|
||||
max-journal-size ( default | unlimited | <sizeval> );
|
||||
max-records <integer>;
|
||||
max-refresh-time <integer>;
|
||||
max-retry-time <integer>;
|
||||
max-transfer-idle-in <integer>;
|
||||
max-transfer-idle-out <integer>;
|
||||
max-transfer-time-in <integer>;
|
||||
max-transfer-time-out <integer>;
|
||||
max-zone-ttl ( unlimited | <ttlval> );
|
||||
min-refresh-time <integer>;
|
||||
min-retry-time <integer>;
|
||||
multi-master <boolean>;
|
||||
notify ( explicit | master-only | <boolean> );
|
||||
notify-delay <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | *
|
||||
) ] [ dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer>
|
||||
| * ) ] [ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
|
||||
server-names { <string>; ... };
|
||||
sig-signing-nodes <integer>;
|
||||
sig-signing-signatures <integer>;
|
||||
sig-signing-type <integer>;
|
||||
sig-validity-interval <integer> [ <integer> ];
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> |
|
||||
* ) ] [ dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port (
|
||||
<integer> | * ) ] [ dscp <integer> ];
|
||||
try-tcp-refresh <boolean>;
|
||||
type ( primary | master | secondary | slave | mirror |
|
||||
delegation-only | forward | hint | redirect |
|
||||
static-stub | stub );
|
||||
update-check-ksk <boolean>;
|
||||
update-policy ( local | { ( deny | grant ) <string> (
|
||||
6to4-self | external | krb5-self | krb5-selfsub |
|
||||
krb5-subdomain | ms-self | ms-selfsub | ms-subdomain |
|
||||
name | self | selfsub | selfwild | subdomain | tcp-self
|
||||
| wildcard | zonesub ) [ <string> ] <rrtypelist>; ... };
|
||||
use-alt-transfer-source <boolean>;
|
||||
zero-no-soa-ttl <boolean>;
|
||||
zone-statistics ( full | terse | none | <boolean> );
|
||||
}; // may occur multiple times
|
||||
zone-statistics ( full | terse | none | <boolean> );
|
||||
}; // may occur multiple times
|
||||
|
||||
zone <string> [ <class> ] {
|
||||
allow-notify { <address_match_element>; ... };
|
||||
allow-query { <address_match_element>; ... };
|
||||
allow-query-on { <address_match_element>; ... };
|
||||
allow-transfer { <address_match_element>; ... };
|
||||
allow-update { <address_match_element>; ... };
|
||||
allow-update-forwarding { <address_match_element>; ... };
|
||||
also-notify [ port <integer> ] [ dscp <integer> ] { ( <masters> |
|
||||
<ipv4_address> [ port <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] ) [ key <string> ]; ... };
|
||||
alt-transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
alt-transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> |
|
||||
* ) ] [ dscp <integer> ];
|
||||
auto-dnssec ( allow | maintain | off );
|
||||
check-dup-records ( fail | warn | ignore );
|
||||
check-integrity <boolean>;
|
||||
check-mx ( fail | warn | ignore );
|
||||
check-mx-cname ( fail | warn | ignore );
|
||||
check-names ( fail | warn | ignore );
|
||||
check-sibling <boolean>;
|
||||
check-spf ( warn | ignore );
|
||||
check-srv-cname ( fail | warn | ignore );
|
||||
check-wildcard <boolean>;
|
||||
database <string>;
|
||||
delegation-only <boolean>;
|
||||
dialup ( notify | notify-passive | passive | refresh | <boolean> );
|
||||
dlz <string>;
|
||||
dnskey-sig-validity <integer>;
|
||||
dnssec-dnskey-kskonly <boolean>;
|
||||
dnssec-loadkeys-interval <integer>;
|
||||
dnssec-secure-to-insecure <boolean>;
|
||||
dnssec-update-mode ( maintain | no-resign );
|
||||
file <quoted_string>;
|
||||
forward ( first | only );
|
||||
forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address>
|
||||
| <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
|
||||
in-view <string>;
|
||||
inline-signing <boolean>;
|
||||
ixfr-from-differences <boolean>;
|
||||
journal <quoted_string>;
|
||||
key-directory <quoted_string>;
|
||||
masterfile-format ( map | raw | text );
|
||||
masterfile-style ( full | relative );
|
||||
masters [ port <integer> ] [ dscp <integer> ] { ( <masters> |
|
||||
<ipv4_address> [ port <integer> ] | <ipv6_address> [ port
|
||||
<integer> ] ) [ key <string> ]; ... };
|
||||
max-journal-size ( default | unlimited | <sizeval> );
|
||||
max-records <integer>;
|
||||
max-refresh-time <integer>;
|
||||
max-retry-time <integer>;
|
||||
max-transfer-idle-in <integer>;
|
||||
max-transfer-idle-out <integer>;
|
||||
max-transfer-time-in <integer>;
|
||||
max-transfer-time-out <integer>;
|
||||
max-zone-ttl ( unlimited | <ttlval> );
|
||||
min-refresh-time <integer>;
|
||||
min-retry-time <integer>;
|
||||
multi-master <boolean>;
|
||||
notify ( explicit | master-only | <boolean> );
|
||||
notify-delay <integer>;
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ]
|
||||
[ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
serial-update-method ( date | increment | unixtime );
|
||||
server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
|
||||
server-names { <string>; ... };
|
||||
sig-signing-nodes <integer>;
|
||||
sig-signing-signatures <integer>;
|
||||
sig-signing-type <integer>;
|
||||
sig-validity-interval <integer> [ <integer> ];
|
||||
transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
|
||||
dscp <integer> ];
|
||||
transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
|
||||
] [ dscp <integer> ];
|
||||
try-tcp-refresh <boolean>;
|
||||
type ( primary | master | secondary | slave | mirror |
|
||||
delegation-only | forward | hint | redirect | static-stub |
|
||||
stub );
|
||||
update-check-ksk <boolean>;
|
||||
update-policy ( local | { ( deny | grant ) <string> ( 6to4-self |
|
||||
external | krb5-self | krb5-selfsub | krb5-subdomain | ms-self
|
||||
| ms-selfsub | ms-subdomain | name | self | selfsub | selfwild
|
||||
| subdomain | tcp-self | wildcard | zonesub ) [ <string> ]
|
||||
<rrtypelist>; ... };
|
||||
use-alt-transfer-source <boolean>;
|
||||
zero-no-soa-ttl <boolean>;
|
||||
zone-statistics ( full | terse | none | <boolean> );
|
||||
}; // may occur multiple times
|
||||
|
@@ -43,7 +43,6 @@ zone <string> [ <class> ] {
|
||||
notify-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
|
||||
notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
|
||||
notify-to-soa <boolean>;
|
||||
nsec3-test-zone <boolean>; // test only
|
||||
request-expire <boolean>;
|
||||
request-ixfr <boolean>;
|
||||
sig-signing-nodes <integer>;
|
||||
|
@@ -485,6 +485,10 @@ cfg_printx(const cfg_obj_t *obj, unsigned int flags,
|
||||
|
||||
#define CFG_PRINTER_XKEY 0x1 /* '?' out shared keys. */
|
||||
#define CFG_PRINTER_ONELINE 0x2 /* print config as a single line */
|
||||
#define CFG_PRINTER_ACTIVEONLY 0x4 /* print only active configuration
|
||||
options, omitting ancient,
|
||||
obsolete, nonimplemented,
|
||||
and test-only options. */
|
||||
|
||||
/*%<
|
||||
* Print the configuration object 'obj' by repeatedly calling the
|
||||
@@ -496,7 +500,7 @@ cfg_printx(const cfg_obj_t *obj, unsigned int flags,
|
||||
*/
|
||||
|
||||
void
|
||||
cfg_print_grammar(const cfg_type_t *type,
|
||||
cfg_print_grammar(const cfg_type_t *type, unsigned int flags,
|
||||
void (*f)(void *closure, const char *text, int textlen),
|
||||
void *closure);
|
||||
/*%<
|
||||
|
@@ -550,7 +550,7 @@ cfg_clause_validforzone(const char *name, unsigned int ztype);
|
||||
*/
|
||||
|
||||
void
|
||||
cfg_print_zonegrammar(const unsigned int zonetype,
|
||||
cfg_print_zonegrammar(const unsigned int zonetype, unsigned int flags,
|
||||
void (*f)(void *closure, const char *text, int textlen),
|
||||
void *closure);
|
||||
/*%<
|
||||
|
@@ -3851,7 +3851,7 @@ cfg_clause_validforzone(const char *name, unsigned int ztype) {
|
||||
}
|
||||
|
||||
void
|
||||
cfg_print_zonegrammar(const unsigned int zonetype,
|
||||
cfg_print_zonegrammar(const unsigned int zonetype, unsigned int flags,
|
||||
void (*f)(void *closure, const char *text, int textlen),
|
||||
void *closure)
|
||||
{
|
||||
@@ -3866,7 +3866,7 @@ cfg_print_zonegrammar(const unsigned int zonetype,
|
||||
pctx.f = f;
|
||||
pctx.closure = closure;
|
||||
pctx.indent = 0;
|
||||
pctx.flags = 0;
|
||||
pctx.flags = flags;
|
||||
|
||||
memmove(clauses, zone_clauses, sizeof(zone_clauses));
|
||||
memmove(clauses + sizeof(zone_clauses)/sizeof(zone_clauses[0]) - 1,
|
||||
@@ -3922,8 +3922,17 @@ cfg_print_zonegrammar(const unsigned int zonetype,
|
||||
}
|
||||
|
||||
for (clause = clauses; clause->name != NULL; clause++) {
|
||||
if (((pctx.flags & CFG_PRINTER_ACTIVEONLY) != 0) &&
|
||||
(((clause->flags & CFG_CLAUSEFLAG_OBSOLETE) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_ANCIENT) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_NYI) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_TESTONLY) != 0)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if ((clause->flags & zonetype) == 0 ||
|
||||
strcasecmp(clause->name, "type") == 0) {
|
||||
strcasecmp(clause->name, "type") == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
cfg_print_indent(&pctx);
|
||||
|
@@ -2312,6 +2312,14 @@ cfg_doc_mapbody(cfg_printer_t *pctx, const cfg_type_t *type) {
|
||||
|
||||
for (clauseset = type->of; *clauseset != NULL; clauseset++) {
|
||||
for (clause = *clauseset; clause->name != NULL; clause++) {
|
||||
if (((pctx->flags & CFG_PRINTER_ACTIVEONLY) != 0) &&
|
||||
(((clause->flags & CFG_CLAUSEFLAG_OBSOLETE) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_ANCIENT) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_NYI) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_TESTONLY) != 0)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
cfg_print_cstr(pctx, clause->name);
|
||||
cfg_print_cstr(pctx, " ");
|
||||
cfg_doc_obj(pctx, clause->type);
|
||||
@@ -2359,6 +2367,14 @@ cfg_doc_map(cfg_printer_t *pctx, const cfg_type_t *type) {
|
||||
|
||||
for (clauseset = type->of; *clauseset != NULL; clauseset++) {
|
||||
for (clause = *clauseset; clause->name != NULL; clause++) {
|
||||
if (((pctx->flags & CFG_PRINTER_ACTIVEONLY) != 0) &&
|
||||
(((clause->flags & CFG_CLAUSEFLAG_OBSOLETE) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_ANCIENT) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_NYI) != 0) ||
|
||||
((clause->flags & CFG_CLAUSEFLAG_TESTONLY) != 0)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
cfg_print_indent(pctx);
|
||||
cfg_print_cstr(pctx, clause->name);
|
||||
if (clause->type->print != cfg_print_void)
|
||||
@@ -3460,7 +3476,7 @@ cfg_doc_terminal(cfg_printer_t *pctx, const cfg_type_t *type) {
|
||||
}
|
||||
|
||||
void
|
||||
cfg_print_grammar(const cfg_type_t *type,
|
||||
cfg_print_grammar(const cfg_type_t *type, unsigned int flags,
|
||||
void (*f)(void *closure, const char *text, int textlen),
|
||||
void *closure)
|
||||
{
|
||||
@@ -3469,7 +3485,7 @@ cfg_print_grammar(const cfg_type_t *type,
|
||||
pctx.f = f;
|
||||
pctx.closure = closure;
|
||||
pctx.indent = 0;
|
||||
pctx.flags = 0;
|
||||
pctx.flags = flags;
|
||||
cfg_doc_obj(&pctx, type);
|
||||
}
|
||||
|
||||
|
@@ -1528,6 +1528,7 @@
|
||||
./doc/misc/migration-4to9 TXT.BRIEF 2001,2004,2016,2018,2019
|
||||
./doc/misc/mirror.zoneopt X 2018,2019
|
||||
./doc/misc/options X 2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019
|
||||
./doc/misc/options.active X 2019
|
||||
./doc/misc/redirect.zoneopt X 2018,2019
|
||||
./doc/misc/rfc-compliance TXT.BRIEF 2001,2004,2015,2016,2018,2019
|
||||
./doc/misc/roadmap TXT.BRIEF 2000,2001,2004,2016,2017,2018,2019
|
||||
|
Reference in New Issue
Block a user