]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Un-format grammar files in doc/misc
authorPetr Špaček <pspacek@isc.org>
Wed, 11 May 2022 07:20:51 +0000 (09:20 +0200)
committerPetr Špaček <pspacek@isc.org>
Fri, 1 Jul 2022 06:56:33 +0000 (08:56 +0200)
The next commit is going to add parser for ISC configuration format.
To simplify the parser the grammar files in doc/misc are no longer
line-wrapped as handling it would make the grammar parser unnecessairly
complicated.

This affects visible output in the ARM, but in the end we are going to
replace the auto-generated .rst files with grammar pretty printed, so
formatting of these files does not matter in practical terms.

17 files changed:
bin/named/named.conf.rst
doc/man/named.conf.5in
doc/misc/Makefile.am
doc/misc/acl.grammar.rst
doc/misc/controls.grammar.rst
doc/misc/dnssec-policy.grammar.rst
doc/misc/logging.grammar.rst
doc/misc/managed-keys.grammar.rst
doc/misc/options
doc/misc/options.active
doc/misc/options.grammar.rst
doc/misc/parental-agents.grammar.rst
doc/misc/primaries.grammar.rst
doc/misc/server.grammar.rst
doc/misc/statistics-channels.grammar.rst
doc/misc/trust-anchors.grammar.rst
doc/misc/trusted-keys.grammar.rst

index 15ebf8759502ae3ce508adf972d995fdbc6fe36a..4e5cbfbe9449b3ec0db72b775013eb0bd2c46ba4 100644 (file)
@@ -35,28 +35,14 @@ C style: /\* \*/
 
 Unix style: # to end of line
 
-ACL
-^^^
-
-::
-
-  acl string { address_match_element; ... };
-
 CONTROLS
 ^^^^^^^^
 
 ::
 
   controls {
-       inet ( ipv4_address | ipv6_address |
-           * ) [ port ( integer | * ) ] allow
-           { address_match_element; ... } [
-           keys { string; ... } ] [ read-only
-           boolean ];
-       unix quoted_string perm integer
-           owner integer group integer [
-           keys { string; ... } ] [ read-only
-           boolean ];
+       inet ( ipv4_address | ipv6_address | * ) [ port ( integer | * ) ] allow { address_match_element; ... } [ keys { string; ... } ] [ read-only boolean ];
+       unix quoted_string perm integer owner integer group integer [ keys { string; ... } ] [ read-only boolean ];
   };
 
 DLZ
@@ -76,11 +62,9 @@ DNSSEC-POLICY
 
   dnssec-policy string {
        dnskey-ttl duration;
-       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime
-           duration_or_unlimited algorithm string [ integer ]; ... };
+       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime duration_or_unlimited algorithm string [ integer ]; ... };
        max-zone-ttl duration;
-       nsec3param [ iterations integer ] [ optout boolean ] [
-           salt-length integer ];
+       nsec3param [ iterations integer ] [ optout boolean ] [ salt-length integer ];
        parent-ds-ttl duration;
        parent-propagation-delay duration;
        publish-safety duration;
@@ -97,8 +81,7 @@ DYNDB
 
 ::
 
-  dyndb string quoted_string {
-      unspecified-text };
+  dyndb string quoted_string { unspecified-text };
 
 HTTP
 ^^^^
@@ -130,8 +113,7 @@ LOGGING
        category string { string; ... };
        channel string {
                buffered boolean;
-               file quoted_string [ versions ( unlimited | integer ) ]
-                   [ size size ] [ suffix ( increment | timestamp ) ];
+               file quoted_string [ versions ( unlimited | integer ) ] [ size size ] [ suffix ( increment | timestamp ) ];
                null;
                print-category boolean;
                print-severity boolean;
@@ -149,10 +131,7 @@ See DNSSEC-KEYS.
 
 ::
 
-  managed-keys { string ( static-key
-      | initial-key | static-ds |
-      initial-ds ) integer integer
-      integer quoted_string; ... };, deprecated
+  managed-keys { string ( static-key | initial-key | static-ds | initial-ds ) integer integer integer quoted_string; ... };, deprecated
 
 OPTIONS
 ^^^^^^^
@@ -168,18 +147,12 @@ OPTIONS
        allow-query-on { address_match_element; ... };
        allow-recursion { address_match_element; ... };
        allow-recursion-on { address_match_element; ... };
-       allow-transfer [ port integer ] [ transport string ] {
-           address_match_element; ... };
+       allow-transfer [ port integer ] [ transport string ] { address_match_element; ... };
        allow-update { address_match_element; ... };
        allow-update-forwarding { address_match_element; ... };
-       also-notify [ port integer ] [ dscp integer ] { (
-           remote-servers | ipv4_address [ port integer ] |
-           ipv6_address [ port integer ] ) [ key string ] [ tls
-           string ]; ... };
-       alt-transfer-source ( ipv4_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
-       alt-transfer-source-v6 ( ipv6_address | * ) [ port ( integer |
-           * ) ] [ dscp integer ];
+       also-notify [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls 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;
@@ -189,19 +162,12 @@ OPTIONS
        avoid-v6-udp-ports { portrange; ... };
        bindkeys-file quoted_string;
        blackhole { address_match_element; ... };
-       catalog-zones { zone string [ default-primaries [ port integer
-           ] [ dscp integer ] { ( remote-servers | ipv4_address [
-           port integer ] | ipv6_address [ port integer ] ) [ key
-           string ] [ tls string ]; ... } ] [ zone-directory
-           quoted_string ] [ in-memory boolean ] [ min-update-interval
-           duration ]; ... };
+       catalog-zones { zone string [ default-primaries [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... } ] [ zone-directory quoted_string ] [ in-memory boolean ] [ min-update-interval duration ]; ... };
        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 );
+       check-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore );
        check-sibling boolean;
        check-spf ( warn | ignore );
        check-srv-cname ( fail | warn | ignore );
@@ -211,16 +177,12 @@ OPTIONS
        cookie-secret string;
        coresize ( default | unlimited | sizeval );
        datasize ( default | unlimited | sizeval );
-       deny-answer-addresses { address_match_element; ... } [
-           except-from { string; ... } ];
-       deny-answer-aliases { string; ... } [ except-from { string; ...
-           } ];
+       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;
-           ... };
-       disable-ds-digests string { string;
-           ... };
+       disable-algorithms string { string; ... };
+       disable-ds-digests string { string; ... };
        disable-empty-zone string;
        dns64 netprefix {
                break-dnssec boolean;
@@ -243,18 +205,12 @@ OPTIONS
        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 ) ]; ... };
+       dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... };
        dnstap-identity ( quoted_string | none | hostname );
-       dnstap-output ( file | unix ) quoted_string [ size ( unlimited |
-           size ) ] [ versions ( unlimited | integer ) ] [ suffix (
-           increment | timestamp ) ];
+       dnstap-output ( file | unix ) quoted_string [ size ( unlimited | size ) ] [ versions ( unlimited | integer ) ] [ suffix ( increment | timestamp ) ];
        dnstap-version ( quoted_string | none );
        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 ] ); ... };
+       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;
@@ -266,8 +222,7 @@ OPTIONS
        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 ]; ... };
+       forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
        fstrm-set-buffer-hint integer;
        fstrm-set-flush-timeout integer;
        fstrm-set-input-queue-size integer;
@@ -286,18 +241,11 @@ OPTIONS
        ipv4only-contact string;
        ipv4only-enable boolean;
        ipv4only-server string;
-       ixfr-from-differences ( primary | master | secondary | slave |
-           boolean );
+       ixfr-from-differences ( primary | master | secondary | slave | boolean );
        key-directory quoted_string;
        lame-ttl duration;
-       listen-on [ port integer ] [ dscp
-           integer ] [ tls string ] [ http
-           string ] {
-           address_match_element; ... };
-       listen-on-v6 [ port integer ] [ dscp
-           integer ] [ tls string ] [ http
-           string ] {
-           address_match_element; ... };
+       listen-on [ port integer ] [ dscp integer ] [ tls string ] [ http string ] { address_match_element; ... };
+       listen-on-v6 [ port integer ] [ dscp integer ] [ tls string ] [ http string ] { address_match_element; ... };
        lmdb-mapsize sizeval;
        lock-file ( quoted_string | none );
        managed-keys-directory quoted_string;
@@ -339,30 +287,22 @@ OPTIONS
        notify ( explicit | master-only | primary-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-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       notify-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
        notify-to-soa boolean;
        nta-lifetime duration;
        nta-recheck duration;
        nxdomain-redirect string;
-       parental-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-           dscp integer ];
-       parental-source-v6 ( ipv6_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
+       parental-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       parental-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
        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 ];
+       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 {
@@ -393,26 +333,12 @@ OPTIONS
        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 duration ] [ min-update-interval
-           duration ] [ 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 duration ] [
-           min-update-interval duration ] [ min-ns-dots integer ] [
-           nsip-wait-recurse boolean ] [ nsdname-wait-recurse boolean
-           ] [ qname-wait-recurse boolean ] [ recursive-only boolean ]
-           [ nsip-enable boolean ] [ nsdname-enable boolean ] [
-           dnsrps-enable boolean ] [ dnsrps-options { unspecified-text
-           } ];
+       response-padding { address_match_element; ... } block-size integer;
+       response-policy { zone string [ add-soa boolean ] [ log boolean ] [ max-policy-ttl duration ] [ min-update-interval duration ] [ 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 duration ] [ min-update-interval duration ] [ min-ns-dots integer ] [ nsip-wait-recurse boolean ] [ nsdname-wait-recurse boolean ] [ qname-wait-recurse boolean ] [ recursive-only boolean ] [ nsip-enable boolean ] [ nsdname-enable boolean ] [ dnsrps-enable boolean ] [ dnsrps-options { unspecified-text } ];
        reuseport boolean;
        root-delegation-only [ exclude { string; ... } ];
        root-key-sentinel boolean;
-       rrset-order { [ class string ] [ type string ] [ name
-           quoted_string ] string string; ... };
+       rrset-order { [ class string ] [ type string ] [ name quoted_string ] string string; ... };
        secroots-file quoted_string;
        send-cookie boolean;
        serial-query-rate integer;
@@ -451,10 +377,8 @@ OPTIONS
        tls-port integer;
        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 ];
+       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;
@@ -479,30 +403,21 @@ PARENTAL-AGENTS
 
 ::
 
-  parental-agents string [ port integer ] [
-      dscp integer ] { ( remote-servers |
-      ipv4_address [ port integer ] |
-      ipv6_address [ port integer ] ) [ key
-      string ] [ tls string ]; ... };
+  parental-agents string [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... };
 
 PLUGIN
 ^^^^^^
 
 ::
 
-  plugin ( query ) string [ { unspecified-text
-      } ];
+  plugin ( query ) string [ { unspecified-text } ];
 
 PRIMARIES
 ^^^^^^^^^
 
 ::
 
-  primaries string [ port integer ] [ dscp
-      integer ] { ( remote-servers |
-      ipv4_address [ port integer ] |
-      ipv6_address [ port integer ] ) [ key
-      string ] [ tls string ]; ... };
+  primaries string [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... };
 
 SERVER
 ^^^^^^
@@ -516,18 +431,12 @@ SERVER
        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 ];
+       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 ];
+       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;
@@ -535,10 +444,8 @@ SERVER
        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 ];
+       transfer-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       transfer-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
        transfers integer;
   };
 
@@ -548,10 +455,7 @@ STATISTICS-CHANNELS
 ::
 
   statistics-channels {
-       inet ( ipv4_address | ipv6_address |
-           * ) [ port ( integer | * ) ] [
-           allow { address_match_element; ...
-           } ];
+       inet ( ipv4_address | ipv6_address | * ) [ port ( integer | * ) ] [ allow { address_match_element; ... } ];
   };
 
 TLS
@@ -576,10 +480,7 @@ TRUST-ANCHORS
 
 ::
 
-  trust-anchors { string ( static-key |
-      initial-key | static-ds | initial-ds )
-      integer integer integer
-      quoted_string; ... };
+  trust-anchors { string ( static-key | initial-key | static-ds | initial-ds ) integer integer integer quoted_string; ... };
 
 TRUSTED-KEYS
 ^^^^^^^^^^^^
@@ -588,9 +489,7 @@ Deprecated - see DNSSEC-KEYS.
 
 ::
 
-  trusted-keys { string integer
-      integer integer
-      quoted_string; ... };, deprecated
+  trusted-keys { string integer integer integer quoted_string; ... };, deprecated
 
 VIEW
 ^^^^
@@ -606,48 +505,31 @@ VIEW
        allow-query-on { address_match_element; ... };
        allow-recursion { address_match_element; ... };
        allow-recursion-on { address_match_element; ... };
-       allow-transfer [ port integer ] [ transport string ] {
-           address_match_element; ... };
+       allow-transfer [ port integer ] [ transport string ] { address_match_element; ... };
        allow-update { address_match_element; ... };
        allow-update-forwarding { address_match_element; ... };
-       also-notify [ port integer ] [ dscp integer ] { (
-           remote-servers | ipv4_address [ port integer ] |
-           ipv6_address [ port integer ] ) [ key string ] [ tls
-           string ]; ... };
-       alt-transfer-source ( ipv4_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
-       alt-transfer-source-v6 ( ipv6_address | * ) [ port ( integer |
-           * ) ] [ dscp integer ];
+       also-notify [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls 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;
        auto-dnssec ( allow | maintain | off );
-       catalog-zones { zone string [ default-primaries [ port integer
-           ] [ dscp integer ] { ( remote-servers | ipv4_address [
-           port integer ] | ipv6_address [ port integer ] ) [ key
-           string ] [ tls string ]; ... } ] [ zone-directory
-           quoted_string ] [ in-memory boolean ] [ min-update-interval
-           duration ]; ... };
+       catalog-zones { zone string [ default-primaries [ port integer ] [ dscp integer ] { ( remote-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... } ] [ zone-directory quoted_string ] [ in-memory boolean ] [ min-update-interval duration ]; ... };
        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 );
+       check-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore );
        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; ...
-           } ];
+       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;
-           ... };
-       disable-ds-digests string { string;
-           ... };
+       disable-algorithms string { string; ... };
+       disable-ds-digests string { string; ... };
        disable-empty-zone string;
        dlz string {
                database string;
@@ -674,14 +556,9 @@ VIEW
        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 ) ]; ... };
-       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 };
+       dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... };
+       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 };
        edns-udp-size integer;
        empty-contact string;
        empty-server string;
@@ -690,13 +567,11 @@ VIEW
        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 ]; ... };
+       forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
        ipv4only-contact string;
        ipv4only-enable boolean;
        ipv4only-server string;
-       ixfr-from-differences ( primary | master | secondary | slave |
-           boolean );
+       ixfr-from-differences ( primary | master | secondary | slave | boolean );
        key string {
                algorithm string;
                secret string;
@@ -704,12 +579,7 @@ VIEW
        key-directory quoted_string;
        lame-ttl duration;
        lmdb-mapsize sizeval;
-       managed-keys { string (
-           static-key | initial-key
-           | static-ds | initial-ds
-           ) integer integer
-           integer
-           quoted_string; ... };, deprecated
+       managed-keys { string ( static-key | initial-key | static-ds | initial-ds ) integer integer integer quoted_string; ... };, deprecated
        masterfile-format ( raw | text );
        masterfile-style ( full | relative );
        match-clients { address_match_element; ... };
@@ -746,30 +616,21 @@ VIEW
        nocookie-udp-size integer;
        notify ( explicit | master-only | primary-only | boolean );
        notify-delay integer;
-       notify-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-           dscp integer ];
-       notify-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ]
-           [ dscp integer ];
+       notify-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       notify-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
        notify-to-soa boolean;
        nta-lifetime duration;
        nta-recheck duration;
        nxdomain-redirect string;
-       parental-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-           dscp integer ];
-       parental-source-v6 ( ipv6_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
-       plugin ( query ) string [ {
-           unspecified-text } ];
+       parental-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       parental-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       plugin ( query ) string [ { unspecified-text } ];
        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 ];
+       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;
@@ -795,25 +656,11 @@ VIEW
        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 duration ] [ min-update-interval
-           duration ] [ 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 duration ] [
-           min-update-interval duration ] [ min-ns-dots integer ] [
-           nsip-wait-recurse boolean ] [ nsdname-wait-recurse boolean
-           ] [ qname-wait-recurse boolean ] [ recursive-only boolean ]
-           [ nsip-enable boolean ] [ nsdname-enable boolean ] [
-           dnsrps-enable boolean ] [ dnsrps-options { unspecified-text
-           } ];
+       response-padding { address_match_element; ... } block-size integer;
+       response-policy { zone string [ add-soa boolean ] [ log boolean ] [ max-policy-ttl duration ] [ min-update-interval duration ] [ 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 duration ] [ min-update-interval duration ] [ min-ns-dots integer ] [ nsip-wait-recurse boolean ] [ nsdname-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; ... };
+       rrset-order { [ class string ] [ type string ] [ name quoted_string ] string string; ... };
        send-cookie boolean;
        serial-update-method ( date | increment | unixtime );
        server netprefix {
@@ -823,20 +670,12 @@ VIEW
                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 ];
+               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 ];
+               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;
@@ -844,10 +683,8 @@ VIEW
                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 ];
+               transfer-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+               transfer-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
                transfers integer;
        };
        servfail-ttl duration;
@@ -863,19 +700,11 @@ VIEW
        stale-refresh-time duration;
        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 ];
+       transfer-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+       transfer-source-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
        trust-anchor-telemetry boolean; // experimental
-       trust-anchors { string ( static-key |
-           initial-key | static-ds | initial-ds
-           ) integer integer integer
-           quoted_string; ... };
-       trusted-keys { string
-           integer integer
-           integer
-           quoted_string; ... };, deprecated
+       trust-anchors { string ( static-key | initial-key | static-ds | initial-ds ) integer integer integer quoted_string; ... };
+       trusted-keys { string integer integer integer quoted_string; ... };, deprecated
        try-tcp-refresh boolean;
        update-check-ksk boolean;
        use-alt-transfer-source boolean;
index c05335d99270b806d61a221257674775bd453ed8..7c94944b43f97aae9b4ec2beede048068cd8e0c5 100644 (file)
@@ -48,17 +48,6 @@ C++ style: // to end of line
 .UNINDENT
 .sp
 Unix style: # to end of line
-.SS ACL
-.INDENT 0.0
-.INDENT 3.5
-.sp
-.nf
-.ft C
-acl string { address_match_element; ... };
-.ft P
-.fi
-.UNINDENT
-.UNINDENT
 .SS CONTROLS
 .INDENT 0.0
 .INDENT 3.5
@@ -66,15 +55,8 @@ acl string { address_match_element; ... };
 .nf
 .ft C
 controls {
-      inet ( ipv4_address | ipv6_address |
-          * ) [ port ( integer | * ) ] allow
-          { address_match_element; ... } [
-          keys { string; ... } ] [ read\-only
-          boolean ];
-      unix quoted_string perm integer
-          owner integer group integer [
-          keys { string; ... } ] [ read\-only
-          boolean ];
+      inet ( ipv4_address | ipv6_address | * ) [ port ( integer | * ) ] allow { address_match_element; ... } [ keys { string; ... } ] [ read\-only boolean ];
+      unix quoted_string perm integer owner integer group integer [ keys { string; ... } ] [ read\-only boolean ];
 };
 .ft P
 .fi
@@ -102,11 +84,9 @@ dlz string {
 .ft C
 dnssec\-policy string {
       dnskey\-ttl duration;
-      keys { ( csk | ksk | zsk ) [ ( key\-directory ) ] lifetime
-          duration_or_unlimited algorithm string [ integer ]; ... };
+      keys { ( csk | ksk | zsk ) [ ( key\-directory ) ] lifetime duration_or_unlimited algorithm string [ integer ]; ... };
       max\-zone\-ttl duration;
-      nsec3param [ iterations integer ] [ optout boolean ] [
-          salt\-length integer ];
+      nsec3param [ iterations integer ] [ optout boolean ] [ salt\-length integer ];
       parent\-ds\-ttl duration;
       parent\-propagation\-delay duration;
       publish\-safety duration;
@@ -127,8 +107,7 @@ dnssec\-policy string {
 .sp
 .nf
 .ft C
-dyndb string quoted_string {
-    unspecified\-text };
+dyndb string quoted_string { unspecified\-text };
 .ft P
 .fi
 .UNINDENT
@@ -172,8 +151,7 @@ logging {
       category string { string; ... };
       channel string {
               buffered boolean;
-              file quoted_string [ versions ( unlimited | integer ) ]
-                  [ size size ] [ suffix ( increment | timestamp ) ];
+              file quoted_string [ versions ( unlimited | integer ) ] [ size size ] [ suffix ( increment | timestamp ) ];
               null;
               print\-category boolean;
               print\-severity boolean;
@@ -195,10 +173,7 @@ See DNSSEC\-KEYS.
 .sp
 .nf
 .ft C
-managed\-keys { string ( static\-key
-    | initial\-key | static\-ds |
-    initial\-ds ) integer integer
-    integer quoted_string; ... };, deprecated
+managed\-keys { string ( static\-key | initial\-key | static\-ds | initial\-ds ) integer integer integer quoted_string; ... };, deprecated
 .ft P
 .fi
 .UNINDENT
@@ -218,18 +193,12 @@ options {
       allow\-query\-on { address_match_element; ... };
       allow\-recursion { address_match_element; ... };
       allow\-recursion\-on { address_match_element; ... };
-      allow\-transfer [ port integer ] [ transport string ] {
-          address_match_element; ... };
+      allow\-transfer [ port integer ] [ transport string ] { address_match_element; ... };
       allow\-update { address_match_element; ... };
       allow\-update\-forwarding { address_match_element; ... };
-      also\-notify [ port integer ] [ dscp integer ] { (
-          remote\-servers | ipv4_address [ port integer ] |
-          ipv6_address [ port integer ] ) [ key string ] [ tls
-          string ]; ... };
-      alt\-transfer\-source ( ipv4_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
-      alt\-transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer |
-          * ) ] [ dscp integer ];
+      also\-notify [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls 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;
@@ -239,19 +208,12 @@ options {
       avoid\-v6\-udp\-ports { portrange; ... };
       bindkeys\-file quoted_string;
       blackhole { address_match_element; ... };
-      catalog\-zones { zone string [ default\-primaries [ port integer
-          ] [ dscp integer ] { ( remote\-servers | ipv4_address [
-          port integer ] | ipv6_address [ port integer ] ) [ key
-          string ] [ tls string ]; ... } ] [ zone\-directory
-          quoted_string ] [ in\-memory boolean ] [ min\-update\-interval
-          duration ]; ... };
+      catalog\-zones { zone string [ default\-primaries [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... } ] [ zone\-directory quoted_string ] [ in\-memory boolean ] [ min\-update\-interval duration ]; ... };
       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 );
+      check\-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore );
       check\-sibling boolean;
       check\-spf ( warn | ignore );
       check\-srv\-cname ( fail | warn | ignore );
@@ -261,16 +223,12 @@ options {
       cookie\-secret string;
       coresize ( default | unlimited | sizeval );
       datasize ( default | unlimited | sizeval );
-      deny\-answer\-addresses { address_match_element; ... } [
-          except\-from { string; ... } ];
-      deny\-answer\-aliases { string; ... } [ except\-from { string; ...
-          } ];
+      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;
-          ... };
-      disable\-ds\-digests string { string;
-          ... };
+      disable\-algorithms string { string; ... };
+      disable\-ds\-digests string { string; ... };
       disable\-empty\-zone string;
       dns64 netprefix {
               break\-dnssec boolean;
@@ -293,18 +251,12 @@ options {
       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 ) ]; ... };
+      dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... };
       dnstap\-identity ( quoted_string | none | hostname );
-      dnstap\-output ( file | unix ) quoted_string [ size ( unlimited |
-          size ) ] [ versions ( unlimited | integer ) ] [ suffix (
-          increment | timestamp ) ];
+      dnstap\-output ( file | unix ) quoted_string [ size ( unlimited | size ) ] [ versions ( unlimited | integer ) ] [ suffix ( increment | timestamp ) ];
       dnstap\-version ( quoted_string | none );
       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 ] ); ... };
+      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;
@@ -316,8 +268,7 @@ options {
       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 ]; ... };
+      forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
       fstrm\-set\-buffer\-hint integer;
       fstrm\-set\-flush\-timeout integer;
       fstrm\-set\-input\-queue\-size integer;
@@ -336,18 +287,11 @@ options {
       ipv4only\-contact string;
       ipv4only\-enable boolean;
       ipv4only\-server string;
-      ixfr\-from\-differences ( primary | master | secondary | slave |
-          boolean );
+      ixfr\-from\-differences ( primary | master | secondary | slave | boolean );
       key\-directory quoted_string;
       lame\-ttl duration;
-      listen\-on [ port integer ] [ dscp
-          integer ] [ tls string ] [ http
-          string ] {
-          address_match_element; ... };
-      listen\-on\-v6 [ port integer ] [ dscp
-          integer ] [ tls string ] [ http
-          string ] {
-          address_match_element; ... };
+      listen\-on [ port integer ] [ dscp integer ] [ tls string ] [ http string ] { address_match_element; ... };
+      listen\-on\-v6 [ port integer ] [ dscp integer ] [ tls string ] [ http string ] { address_match_element; ... };
       lmdb\-mapsize sizeval;
       lock\-file ( quoted_string | none );
       managed\-keys\-directory quoted_string;
@@ -389,30 +333,22 @@ options {
       notify ( explicit | master\-only | primary\-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\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      notify\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
       notify\-to\-soa boolean;
       nta\-lifetime duration;
       nta\-recheck duration;
       nxdomain\-redirect string;
-      parental\-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-          dscp integer ];
-      parental\-source\-v6 ( ipv6_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
+      parental\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      parental\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
       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 ];
+      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 {
@@ -443,26 +379,12 @@ options {
       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 duration ] [ min\-update\-interval
-          duration ] [ 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 duration ] [
-          min\-update\-interval duration ] [ min\-ns\-dots integer ] [
-          nsip\-wait\-recurse boolean ] [ nsdname\-wait\-recurse boolean
-          ] [ qname\-wait\-recurse boolean ] [ recursive\-only boolean ]
-          [ nsip\-enable boolean ] [ nsdname\-enable boolean ] [
-          dnsrps\-enable boolean ] [ dnsrps\-options { unspecified\-text
-          } ];
+      response\-padding { address_match_element; ... } block\-size integer;
+      response\-policy { zone string [ add\-soa boolean ] [ log boolean ] [ max\-policy\-ttl duration ] [ min\-update\-interval duration ] [ 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 duration ] [ min\-update\-interval duration ] [ min\-ns\-dots integer ] [ nsip\-wait\-recurse boolean ] [ nsdname\-wait\-recurse boolean ] [ qname\-wait\-recurse boolean ] [ recursive\-only boolean ] [ nsip\-enable boolean ] [ nsdname\-enable boolean ] [ dnsrps\-enable boolean ] [ dnsrps\-options { unspecified\-text } ];
       reuseport boolean;
       root\-delegation\-only [ exclude { string; ... } ];
       root\-key\-sentinel boolean;
-      rrset\-order { [ class string ] [ type string ] [ name
-          quoted_string ] string string; ... };
+      rrset\-order { [ class string ] [ type string ] [ name quoted_string ] string string; ... };
       secroots\-file quoted_string;
       send\-cookie boolean;
       serial\-query\-rate integer;
@@ -501,10 +423,8 @@ options {
       tls\-port integer;
       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 ];
+      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;
@@ -533,11 +453,7 @@ options {
 .sp
 .nf
 .ft C
-parental\-agents string [ port integer ] [
-    dscp integer ] { ( remote\-servers |
-    ipv4_address [ port integer ] |
-    ipv6_address [ port integer ] ) [ key
-    string ] [ tls string ]; ... };
+parental\-agents string [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... };
 .ft P
 .fi
 .UNINDENT
@@ -548,8 +464,7 @@ parental\-agents string [ port integer ] [
 .sp
 .nf
 .ft C
-plugin ( query ) string [ { unspecified\-text
-    } ];
+plugin ( query ) string [ { unspecified\-text } ];
 .ft P
 .fi
 .UNINDENT
@@ -560,11 +475,7 @@ plugin ( query ) string [ { unspecified\-text
 .sp
 .nf
 .ft C
-primaries string [ port integer ] [ dscp
-    integer ] { ( remote\-servers |
-    ipv4_address [ port integer ] |
-    ipv6_address [ port integer ] ) [ key
-    string ] [ tls string ]; ... };
+primaries string [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... };
 .ft P
 .fi
 .UNINDENT
@@ -582,18 +493,12 @@ server netprefix {
       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 ];
+      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 ];
+      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;
@@ -601,10 +506,8 @@ server netprefix {
       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 ];
+      transfer\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
       transfers integer;
 };
 .ft P
@@ -618,10 +521,7 @@ server netprefix {
 .nf
 .ft C
 statistics\-channels {
-      inet ( ipv4_address | ipv6_address |
-          * ) [ port ( integer | * ) ] [
-          allow { address_match_element; ...
-          } ];
+      inet ( ipv4_address | ipv6_address | * ) [ port ( integer | * ) ] [ allow { address_match_element; ... } ];
 };
 .ft P
 .fi
@@ -654,10 +554,7 @@ tls string {
 .sp
 .nf
 .ft C
-trust\-anchors { string ( static\-key |
-    initial\-key | static\-ds | initial\-ds )
-    integer integer integer
-    quoted_string; ... };
+trust\-anchors { string ( static\-key | initial\-key | static\-ds | initial\-ds ) integer integer integer quoted_string; ... };
 .ft P
 .fi
 .UNINDENT
@@ -670,9 +567,7 @@ Deprecated \- see DNSSEC\-KEYS.
 .sp
 .nf
 .ft C
-trusted\-keys { string integer
-    integer integer
-    quoted_string; ... };, deprecated
+trusted\-keys { string integer integer integer quoted_string; ... };, deprecated
 .ft P
 .fi
 .UNINDENT
@@ -692,48 +587,31 @@ view string [ class ] {
       allow\-query\-on { address_match_element; ... };
       allow\-recursion { address_match_element; ... };
       allow\-recursion\-on { address_match_element; ... };
-      allow\-transfer [ port integer ] [ transport string ] {
-          address_match_element; ... };
+      allow\-transfer [ port integer ] [ transport string ] { address_match_element; ... };
       allow\-update { address_match_element; ... };
       allow\-update\-forwarding { address_match_element; ... };
-      also\-notify [ port integer ] [ dscp integer ] { (
-          remote\-servers | ipv4_address [ port integer ] |
-          ipv6_address [ port integer ] ) [ key string ] [ tls
-          string ]; ... };
-      alt\-transfer\-source ( ipv4_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
-      alt\-transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer |
-          * ) ] [ dscp integer ];
+      also\-notify [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls 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;
       auto\-dnssec ( allow | maintain | off );
-      catalog\-zones { zone string [ default\-primaries [ port integer
-          ] [ dscp integer ] { ( remote\-servers | ipv4_address [
-          port integer ] | ipv6_address [ port integer ] ) [ key
-          string ] [ tls string ]; ... } ] [ zone\-directory
-          quoted_string ] [ in\-memory boolean ] [ min\-update\-interval
-          duration ]; ... };
+      catalog\-zones { zone string [ default\-primaries [ port integer ] [ dscp integer ] { ( remote\-servers | ipv4_address [ port integer ] | ipv6_address [ port integer ] ) [ key string ] [ tls string ]; ... } ] [ zone\-directory quoted_string ] [ in\-memory boolean ] [ min\-update\-interval duration ]; ... };
       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 );
+      check\-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore );
       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; ...
-          } ];
+      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;
-          ... };
-      disable\-ds\-digests string { string;
-          ... };
+      disable\-algorithms string { string; ... };
+      disable\-ds\-digests string { string; ... };
       disable\-empty\-zone string;
       dlz string {
               database string;
@@ -760,14 +638,9 @@ view string [ class ] {
       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 ) ]; ... };
-      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 };
+      dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... };
+      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 };
       edns\-udp\-size integer;
       empty\-contact string;
       empty\-server string;
@@ -776,13 +649,11 @@ view string [ class ] {
       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 ]; ... };
+      forwarders [ port integer ] [ dscp integer ] { ( ipv4_address | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
       ipv4only\-contact string;
       ipv4only\-enable boolean;
       ipv4only\-server string;
-      ixfr\-from\-differences ( primary | master | secondary | slave |
-          boolean );
+      ixfr\-from\-differences ( primary | master | secondary | slave | boolean );
       key string {
               algorithm string;
               secret string;
@@ -790,12 +661,7 @@ view string [ class ] {
       key\-directory quoted_string;
       lame\-ttl duration;
       lmdb\-mapsize sizeval;
-      managed\-keys { string (
-          static\-key | initial\-key
-          | static\-ds | initial\-ds
-          ) integer integer
-          integer
-          quoted_string; ... };, deprecated
+      managed\-keys { string ( static\-key | initial\-key | static\-ds | initial\-ds ) integer integer integer quoted_string; ... };, deprecated
       masterfile\-format ( raw | text );
       masterfile\-style ( full | relative );
       match\-clients { address_match_element; ... };
@@ -832,30 +698,21 @@ view string [ class ] {
       nocookie\-udp\-size integer;
       notify ( explicit | master\-only | primary\-only | boolean );
       notify\-delay integer;
-      notify\-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-          dscp integer ];
-      notify\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ]
-          [ dscp integer ];
+      notify\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      notify\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
       notify\-to\-soa boolean;
       nta\-lifetime duration;
       nta\-recheck duration;
       nxdomain\-redirect string;
-      parental\-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-          dscp integer ];
-      parental\-source\-v6 ( ipv6_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
-      plugin ( query ) string [ {
-          unspecified\-text } ];
+      parental\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      parental\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      plugin ( query ) string [ { unspecified\-text } ];
       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 ];
+      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;
@@ -881,25 +738,11 @@ view string [ class ] {
       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 duration ] [ min\-update\-interval
-          duration ] [ 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 duration ] [
-          min\-update\-interval duration ] [ min\-ns\-dots integer ] [
-          nsip\-wait\-recurse boolean ] [ nsdname\-wait\-recurse boolean
-          ] [ qname\-wait\-recurse boolean ] [ recursive\-only boolean ]
-          [ nsip\-enable boolean ] [ nsdname\-enable boolean ] [
-          dnsrps\-enable boolean ] [ dnsrps\-options { unspecified\-text
-          } ];
+      response\-padding { address_match_element; ... } block\-size integer;
+      response\-policy { zone string [ add\-soa boolean ] [ log boolean ] [ max\-policy\-ttl duration ] [ min\-update\-interval duration ] [ 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 duration ] [ min\-update\-interval duration ] [ min\-ns\-dots integer ] [ nsip\-wait\-recurse boolean ] [ nsdname\-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; ... };
+      rrset\-order { [ class string ] [ type string ] [ name quoted_string ] string string; ... };
       send\-cookie boolean;
       serial\-update\-method ( date | increment | unixtime );
       server netprefix {
@@ -909,20 +752,12 @@ view string [ class ] {
               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 ];
+              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 ];
+              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;
@@ -930,10 +765,8 @@ view string [ class ] {
               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 ];
+              transfer\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+              transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
               transfers integer;
       };
       servfail\-ttl duration;
@@ -949,19 +782,11 @@ view string [ class ] {
       stale\-refresh\-time duration;
       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 ];
+      transfer\-source ( ipv4_address | * ) [ port ( integer | * ) ] [ dscp integer ];
+      transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer | * ) ] [ dscp integer ];
       trust\-anchor\-telemetry boolean; // experimental
-      trust\-anchors { string ( static\-key |
-          initial\-key | static\-ds | initial\-ds
-          ) integer integer integer
-          quoted_string; ... };
-      trusted\-keys { string
-          integer integer
-          integer
-          quoted_string; ... };, deprecated
+      trust\-anchors { string ( static\-key | initial\-key | static\-ds | initial\-ds ) integer integer integer quoted_string; ... };
+      trusted\-keys { string integer integer integer quoted_string; ... };, deprecated
       try\-tcp\-refresh boolean;
       update\-check\-ksk boolean;
       use\-alt\-transfer\-source boolean;
index 7481632e96f31cc4fcc8bf2b700aae8ffad29be5..30a3c30e80def94426aee39af1ca5e45894ddb9d 100644 (file)
@@ -70,10 +70,10 @@ BUILT_SOURCES =                             \
        $(OPTIONS_FILES)
 
 options: cfg_test
-       $(AM_V_CFG_TEST)$(builddir)/cfg_test --named --grammar | $(PERL) $(srcdir)/sort-options.pl | $(PERL) $(srcdir)/format-options.pl --strip-not-configured > $@
+       $(AM_V_CFG_TEST)$(builddir)/cfg_test --named --grammar | $(PERL) $(srcdir)/sort-options.pl > $@
 
 options.active: cfg_test
-       $(AM_V_CFG_TEST)$(builddir)/cfg_test --named --grammar --active | $(PERL) $(srcdir)/sort-options.pl | $(PERL) $(srcdir)/format-options.pl --strip-not-configured > $@
+       $(AM_V_CFG_TEST)$(builddir)/cfg_test --named --grammar --active | $(PERL) $(srcdir)/sort-options.pl > $@
 
 primary.zoneopt: cfg_test
        $(AM_V_CFG_TEST)$(builddir)/cfg_test --zonegrammar primary --active > $@
index d27dab3a158703b8c447b2a6369410646de170f7..fb578656873c6916779c4c29ba101f8955313db2 100644 (file)
@@ -11,4 +11,3 @@
 
 ::
 
-  acl <string> { <address_match_element>; ... };
index 440bce492910bbc574985cb056058b2ab723c13c..0f2ec38d8e44d103a051a8134ef6b048cd46169f 100644 (file)
 ::
 
   controls {
-       inet ( <ipv4_address> | <ipv6_address> |
-           * ) [ port ( <integer> | * ) ] allow
-           { <address_match_element>; ... } [
-           keys { <string>; ... } ] [ read-only
-           <boolean> ];
-       unix <quoted_string> perm <integer>
-           owner <integer> group <integer> [
-           keys { <string>; ... } ] [ read-only
-           <boolean> ];
+       inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] allow { <address_match_element>; ... } [ keys { <string>; ... } ] [ read-only <boolean> ];
+       unix <quoted_string> perm <integer> owner <integer> group <integer> [ keys { <string>; ... } ] [ read-only <boolean> ];
   };
index 0aec73b6839b654dfb5f7759aa9ac2d3c22d97e9..da56f07770fcd18960ac3e1300cc81a3c9ba5ab9 100644 (file)
 
   dnssec-policy <string> {
        dnskey-ttl <duration>;
-       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime
-           <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
+       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
        max-zone-ttl <duration>;
-       nsec3param [ iterations <integer> ] [ optout <boolean> ] [
-           salt-length <integer> ];
+       nsec3param [ iterations <integer> ] [ optout <boolean> ] [ salt-length <integer> ];
        parent-ds-ttl <duration>;
        parent-propagation-delay <duration>;
        publish-safety <duration>;
index 377d6e968d95ba1e3b7190ea7872146be7722a70..19986ece889f3200d35e934897063e9303055e98 100644 (file)
@@ -15,8 +15,7 @@
        category <string> { <string>; ... };
        channel <string> {
                buffered <boolean>;
-               file <quoted_string> [ versions ( unlimited | <integer> ) ]
-                   [ size <size> ] [ suffix ( increment | timestamp ) ];
+               file <quoted_string> [ versions ( unlimited | <integer> ) ] [ size <size> ] [ suffix ( increment | timestamp ) ];
                null;
                print-category <boolean>;
                print-severity <boolean>;
index a57f8ef8a62ceb6dee655f8b1357b5d8f79aad42..4393184d7d0b3bf81d629c8d64d1b370427ab62c 100644 (file)
@@ -11,7 +11,4 @@
 
 ::
 
-  managed-keys { <string> ( static-key
-      | initial-key | static-ds |
-      initial-ds ) <integer> <integer>
-      <integer> <quoted_string>; ... };, deprecated
+  managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... };, deprecated
index 9ae75d1e04e65c87607307ac24284c2ad5795cb3..37558e36da1870a52aa015970d92d2563ccc14d0 100644 (file)
-
-// 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
+       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>;
+       database <string>;
+       search <boolean>;
 }; // may occur multiple times
 
 dnssec-policy <string> {
-        dnskey-ttl <duration>;
-        keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime
-            <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
-        max-zone-ttl <duration>;
-        nsec3param [ iterations <integer> ] [ optout <boolean> ] [
-            salt-length <integer> ];
-        parent-ds-ttl <duration>;
-        parent-propagation-delay <duration>;
-        parent-registration-delay <duration>; // obsolete
-        publish-safety <duration>;
-        purge-keys <duration>;
-        retire-safety <duration>;
-        signatures-refresh <duration>;
-        signatures-validity <duration>;
-        signatures-validity-dnskey <duration>;
-        zone-propagation-delay <duration>;
+       dnskey-ttl <duration>;
+       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
+       max-zone-ttl <duration>;
+       nsec3param [ iterations <integer> ] [ optout <boolean> ] [ salt-length <integer> ];
+       parent-ds-ttl <duration>;
+       parent-propagation-delay <duration>;
+       parent-registration-delay <duration>; // obsolete
+       publish-safety <duration>;
+       purge-keys <duration>;
+       retire-safety <duration>;
+       signatures-refresh <duration>;
+       signatures-validity <duration>;
+       signatures-validity-dnskey <duration>;
+       zone-propagation-delay <duration>;
 }; // may occur multiple times
 
-dyndb <string> <quoted_string> {
-    <unspecified-text> }; // may occur multiple times
+dyndb <string> <quoted_string> { <unspecified-text> }; // may occur multiple times
 
 http <string> {
-        endpoints { <quoted_string>; ... };
-        listener-clients <integer>;
-        streams-per-connection <integer>;
+       endpoints { <quoted_string>; ... };
+       listener-clients <integer>;
+       streams-per-connection <integer>;
 }; // may occur multiple times
 
 key <string> {
-        algorithm <string>;
-        secret <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
+       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 | static-ds |
-    initial-ds ) <integer> <integer>
-    <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
+managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
 
 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 [ port <integer> ] [ transport <string> ] {
-            <address_match_element>; ... };
-        allow-update { <address_match_element>; ... };
-        allow-update-forwarding { <address_match_element>; ... };
-        also-notify [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <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>;
-        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>; ... };
-        catalog-zones { zone <string> [ default-primaries [ port <integer>
-            ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [
-            port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key
-            <string> ] [ tls <string> ]; ... } ] [ zone-directory
-            <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval
-            <duration> ]; ... };
-        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>;
-        dnsrps-options { <unspecified-text> };
-        dnssec-accept-expired <boolean>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-must-be-secure <string> <boolean>; // may occur multiple times
-        dnssec-policy <string>;
-        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 ) ]; ... };
-        dnstap-identity ( <quoted_string> | none | hostname );
-        dnstap-output ( file | unix ) <quoted_string> [ size ( unlimited |
-            <size> ) ] [ versions ( unlimited | <integer> ) ] [ suffix (
-            increment | timestamp ) ];
-        dnstap-version ( <quoted_string> | none );
-        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>;
-        fstrm-set-flush-timeout <integer>;
-        fstrm-set-input-queue-size <integer>;
-        fstrm-set-output-notify-threshold <integer>;
-        fstrm-set-output-queue-model ( mpsc | spsc );
-        fstrm-set-output-queue-size <integer>;
-        fstrm-set-reopen-interval <duration>;
-        geoip-directory ( <quoted_string> | none );
-        heartbeat-interval <integer>;
-        hostname ( <quoted_string> | none );
-        http-listener-clients <integer>;
-        http-port <integer>;
-        http-streams-per-connection <integer>;
-        https-port <integer>;
-        interface-interval <duration>;
-        ipv4only-contact <string>;
-        ipv4only-enable <boolean>;
-        ipv4only-server <string>;
-        ixfr-from-differences ( primary | master | secondary | slave |
-            <boolean> );
-        keep-response-order { <address_match_element>; ... }; // obsolete
-        key-directory <quoted_string>;
-        lame-ttl <duration>;
-        listen-on [ port <integer> ] [ dscp
-            <integer> ] [ tls <string> ] [ http
-            <string> ] {
-            <address_match_element>; ... }; // may occur multiple times
-        listen-on-v6 [ port <integer> ] [ dscp
-            <integer> ] [ tls <string> ] [ http
-            <string> ] {
-            <address_match_element>; ... }; // may occur multiple times
-        lmdb-mapsize <sizeval>;
-        lock-file ( <quoted_string> | none );
-        managed-keys-directory <quoted_string>;
-        masterfile-format ( raw | text );
-        masterfile-style ( full | relative );
-        match-mapped-addresses <boolean>;
-        max-cache-size ( default | unlimited | <sizeval> | <percentage> );
-        max-cache-ttl <duration>;
-        max-clients-per-query <integer>;
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-ncache-ttl <duration>;
-        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 <duration>;
-        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 | <duration> );
-        memstatistics <boolean>;
-        memstatistics-file <quoted_string>;
-        message-compression <boolean>;
-        min-cache-ttl <duration>;
-        min-ncache-ttl <duration>;
-        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 | primary-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>;
-        nsec3-test-zone <boolean>; // test only
-        nta-lifetime <duration>;
-        nta-recheck <duration>;
-        nxdomain-redirect <string>;
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        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>; // deprecated
-        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 <duration> ] [ min-update-interval
-            <duration> ] [ 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 <duration> ] [
-            min-update-interval <duration> ] [ min-ns-dots <integer> ] [
-            nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean>
-            ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ]
-            [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [
-            dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text>
-            } ];
-        reuseport <boolean>;
-        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 <duration>;
-        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-client-timeout ( disabled | off | <integer> );
-        stale-answer-enable <boolean>;
-        stale-answer-ttl <duration>;
-        stale-cache-enable <boolean>;
-        stale-refresh-time <duration>;
-        startup-notify-rate <integer>;
-        statistics-file <quoted_string>;
-        suppress-initial-notify <boolean>; // obsolete
-        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>;
-        tcp-receive-buffer <integer>;
-        tcp-send-buffer <integer>;
-        tkey-dhkey <quoted_string> <integer>;
-        tkey-domain <quoted_string>;
-        tkey-gssapi-credential <quoted_string>;
-        tkey-gssapi-keytab <quoted_string>;
-        tls-port <integer>;
-        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>;
-        udp-receive-buffer <integer>;
-        udp-send-buffer <integer>;
-        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> );
+       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 [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
+       allow-update { <address_match_element>; ... };
+       allow-update-forwarding { <address_match_element>; ... };
+       also-notify [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <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>;
+       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>; ... };
+       catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
+       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-policy <string>;
+       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 <duration>; // not configured
+       geoip-directory ( <quoted_string> | none );
+       heartbeat-interval <integer>;
+       hostname ( <quoted_string> | none );
+       http-listener-clients <integer>;
+       http-port <integer>;
+       http-streams-per-connection <integer>;
+       https-port <integer>;
+       interface-interval <duration>;
+       ipv4only-contact <string>;
+       ipv4only-enable <boolean>;
+       ipv4only-server <string>;
+       ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
+       keep-response-order { <address_match_element>; ... }; // obsolete
+       key-directory <quoted_string>;
+       lame-ttl <duration>;
+       listen-on [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
+       listen-on-v6 [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
+       lmdb-mapsize <sizeval>;
+       lock-file ( <quoted_string> | none );
+       managed-keys-directory <quoted_string>;
+       masterfile-format ( raw | text );
+       masterfile-style ( full | relative );
+       match-mapped-addresses <boolean>;
+       max-cache-size ( default | unlimited | <sizeval> | <percentage> );
+       max-cache-ttl <duration>;
+       max-clients-per-query <integer>;
+       max-ixfr-ratio ( unlimited | <percentage> );
+       max-journal-size ( default | unlimited | <sizeval> );
+       max-ncache-ttl <duration>;
+       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 <duration>;
+       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 | <duration> );
+       memstatistics <boolean>;
+       memstatistics-file <quoted_string>;
+       message-compression <boolean>;
+       min-cache-ttl <duration>;
+       min-ncache-ttl <duration>;
+       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 | primary-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>;
+       nsec3-test-zone <boolean>; // test only
+       nta-lifetime <duration>;
+       nta-recheck <duration>;
+       nxdomain-redirect <string>;
+       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       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>; // deprecated
+       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 <duration> ] [ min-update-interval <duration> ] [ 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 <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text> } ];
+       reuseport <boolean>;
+       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 <duration>;
+       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-client-timeout ( disabled | off | <integer> );
+       stale-answer-enable <boolean>;
+       stale-answer-ttl <duration>;
+       stale-cache-enable <boolean>;
+       stale-refresh-time <duration>;
+       startup-notify-rate <integer>;
+       statistics-file <quoted_string>;
+       suppress-initial-notify <boolean>; // obsolete
+       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>;
+       tcp-receive-buffer <integer>;
+       tcp-send-buffer <integer>;
+       tkey-dhkey <quoted_string> <integer>;
+       tkey-domain <quoted_string>;
+       tkey-gssapi-credential <quoted_string>;
+       tkey-gssapi-keytab <quoted_string>;
+       tls-port <integer>;
+       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>;
+       udp-receive-buffer <integer>;
+       udp-send-buffer <integer>;
+       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> );
 };
 
-parental-agents <string> [ port <integer> ] [
-    dscp <integer> ] { ( <remote-servers> |
-    <ipv4_address> [ port <integer> ] |
-    <ipv6_address> [ port <integer> ] ) [ key
-    <string> ] [ tls <string> ]; ... }; // may occur multiple times
+parental-agents <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // may occur multiple times
 
-plugin ( query ) <string> [ { <unspecified-text>
-    } ]; // may occur multiple times
+plugin ( query ) <string> [ { <unspecified-text> } ]; // may occur multiple times
 
-primaries <string> [ port <integer> ] [ dscp
-    <integer> ] { ( <remote-servers> |
-    <ipv4_address> [ port <integer> ] |
-    <ipv6_address> [ port <integer> ] ) [ key
-    <string> ] [ tls <string> ]; ... }; // may occur multiple times
+primaries <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // 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>;
+       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
+       inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] [ allow { <address_match_element>; ... } ]; // may occur multiple times
 }; // may occur multiple times
 
 tls <string> {
-        ca-file <quoted_string>;
-        cert-file <quoted_string>;
-        ciphers <string>;
-        dhparam-file <quoted_string>;
-        key-file <quoted_string>;
-        prefer-server-ciphers <boolean>;
-        protocols { <string>; ... };
-        remote-hostname <quoted_string>;
-        session-tickets <boolean>;
+       ca-file <quoted_string>;
+       cert-file <quoted_string>;
+       ciphers <string>;
+       dhparam-file <quoted_string>;
+       key-file <quoted_string>;
+       prefer-server-ciphers <boolean>;
+       protocols { <string>; ... };
+       remote-hostname <quoted_string>;
+       session-tickets <boolean>;
 }; // may occur multiple times
 
-trust-anchors { <string> ( static-key |
-    initial-key | static-ds | initial-ds )
-    <integer> <integer> <integer>
-    <quoted_string>; ... }; // may occur multiple times
+trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
 
-trusted-keys { <string> <integer>
-    <integer> <integer>
-    <quoted_string>; ... }; // may occur multiple times, deprecated
+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 [ port <integer> ] [ transport <string> ] {
-            <address_match_element>; ... };
-        allow-update { <address_match_element>; ... };
-        allow-update-forwarding { <address_match_element>; ... };
-        also-notify [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <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>;
-        auto-dnssec ( allow | maintain | off );
-        catalog-zones { zone <string> [ default-primaries [ port <integer>
-            ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [
-            port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key
-            <string> ] [ tls <string> ]; ... } ] [ zone-directory
-            <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval
-            <duration> ]; ... };
-        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>;
-        dnsrps-options { <unspecified-text> };
-        dnssec-accept-expired <boolean>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-must-be-secure <string> <boolean>; // may occur multiple times
-        dnssec-policy <string>;
-        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 ) ]; ... };
-        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> ]; ... };
-        ipv4only-contact <string>;
-        ipv4only-enable <boolean>;
-        ipv4only-server <string>;
-        ixfr-from-differences ( primary | master | secondary | slave |
-            <boolean> );
-        key <string> {
-                algorithm <string>;
-                secret <string>;
-        }; // may occur multiple times
-        key-directory <quoted_string>;
-        lame-ttl <duration>;
-        lmdb-mapsize <sizeval>;
-        managed-keys { <string> (
-            static-key | initial-key
-            | static-ds | initial-ds
-            ) <integer> <integer>
-            <integer>
-            <quoted_string>; ... }; // may occur multiple times, deprecated
-        masterfile-format ( 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 <duration>;
-        max-clients-per-query <integer>;
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-ncache-ttl <duration>;
-        max-records <integer>;
-        max-recursion-depth <integer>;
-        max-recursion-queries <integer>;
-        max-refresh-time <integer>;
-        max-retry-time <integer>;
-        max-stale-ttl <duration>;
-        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 | <duration> );
-        message-compression <boolean>;
-        min-cache-ttl <duration>;
-        min-ncache-ttl <duration>;
-        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 | primary-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>;
-        nsec3-test-zone <boolean>; // test only
-        nta-lifetime <duration>;
-        nta-recheck <duration>;
-        nxdomain-redirect <string>;
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        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 <duration> ] [ min-update-interval
-            <duration> ] [ 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 <duration> ] [
-            min-update-interval <duration> ] [ min-ns-dots <integer> ] [
-            nsip-wait-recurse <boolean> ] [ nsdname-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 <duration>;
-        sig-signing-nodes <integer>;
-        sig-signing-signatures <integer>;
-        sig-signing-type <integer>;
-        sig-validity-interval <integer> [ <integer> ];
-        sortlist { <address_match_element>; ... };
-        stale-answer-client-timeout ( disabled | off | <integer> );
-        stale-answer-enable <boolean>;
-        stale-answer-ttl <duration>;
-        stale-cache-enable <boolean>;
-        stale-refresh-time <duration>;
-        suppress-initial-notify <boolean>; // obsolete
-        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
-        trust-anchors { <string> ( static-key |
-            initial-key | static-ds | initial-ds
-            ) <integer> <integer> <integer>
-            <quoted_string>; ... }; // may occur multiple times
-        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-statistics ( full | terse | none | <boolean> );
+       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 [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
+       allow-update { <address_match_element>; ... };
+       allow-update-forwarding { <address_match_element>; ... };
+       also-notify [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <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>;
+       auto-dnssec ( allow | maintain | off );
+       catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
+       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-loadkeys-interval <integer>;
+       dnssec-must-be-secure <string> <boolean>; // may occur multiple times
+       dnssec-policy <string>;
+       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> ]; ... };
+       ipv4only-contact <string>;
+       ipv4only-enable <boolean>;
+       ipv4only-server <string>;
+       ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
+       key <string> {
+               algorithm <string>;
+               secret <string>;
+       }; // may occur multiple times
+       key-directory <quoted_string>;
+       lame-ttl <duration>;
+       lmdb-mapsize <sizeval>;
+       managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
+       masterfile-format ( 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 <duration>;
+       max-clients-per-query <integer>;
+       max-ixfr-ratio ( unlimited | <percentage> );
+       max-journal-size ( default | unlimited | <sizeval> );
+       max-ncache-ttl <duration>;
+       max-records <integer>;
+       max-recursion-depth <integer>;
+       max-recursion-queries <integer>;
+       max-refresh-time <integer>;
+       max-retry-time <integer>;
+       max-stale-ttl <duration>;
+       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 | <duration> );
+       message-compression <boolean>;
+       min-cache-ttl <duration>;
+       min-ncache-ttl <duration>;
+       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 | primary-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>;
+       nsec3-test-zone <boolean>; // test only
+       nta-lifetime <duration>;
+       nta-recheck <duration>;
+       nxdomain-redirect <string>;
+       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       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 <duration> ] [ min-update-interval <duration> ] [ 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 <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-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 <duration>;
+       sig-signing-nodes <integer>;
+       sig-signing-signatures <integer>;
+       sig-signing-type <integer>;
+       sig-validity-interval <integer> [ <integer> ];
+       sortlist { <address_match_element>; ... };
+       stale-answer-client-timeout ( disabled | off | <integer> );
+       stale-answer-enable <boolean>;
+       stale-answer-ttl <duration>;
+       stale-cache-enable <boolean>;
+       stale-refresh-time <duration>;
+       suppress-initial-notify <boolean>; // obsolete
+       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
+       trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
+       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-statistics ( full | terse | none | <boolean> );
 }; // may occur multiple times
 
index 429ab8763b14cc0ef98382cb38df0b3c2631f473..b6d61d153e67c07cc6e81f9c18b59507bc2d8b0c 100644 (file)
-
-// 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
+       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>;
+       database <string>;
+       search <boolean>;
 }; // may occur multiple times
 
 dnssec-policy <string> {
-        dnskey-ttl <duration>;
-        keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime
-            <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
-        max-zone-ttl <duration>;
-        nsec3param [ iterations <integer> ] [ optout <boolean> ] [
-            salt-length <integer> ];
-        parent-ds-ttl <duration>;
-        parent-propagation-delay <duration>;
-        publish-safety <duration>;
-        purge-keys <duration>;
-        retire-safety <duration>;
-        signatures-refresh <duration>;
-        signatures-validity <duration>;
-        signatures-validity-dnskey <duration>;
-        zone-propagation-delay <duration>;
+       dnskey-ttl <duration>;
+       keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
+       max-zone-ttl <duration>;
+       nsec3param [ iterations <integer> ] [ optout <boolean> ] [ salt-length <integer> ];
+       parent-ds-ttl <duration>;
+       parent-propagation-delay <duration>;
+       publish-safety <duration>;
+       purge-keys <duration>;
+       retire-safety <duration>;
+       signatures-refresh <duration>;
+       signatures-validity <duration>;
+       signatures-validity-dnskey <duration>;
+       zone-propagation-delay <duration>;
 }; // may occur multiple times
 
-dyndb <string> <quoted_string> {
-    <unspecified-text> }; // may occur multiple times
+dyndb <string> <quoted_string> { <unspecified-text> }; // may occur multiple times
 
 http <string> {
-        endpoints { <quoted_string>; ... };
-        listener-clients <integer>;
-        streams-per-connection <integer>;
+       endpoints { <quoted_string>; ... };
+       listener-clients <integer>;
+       streams-per-connection <integer>;
 }; // may occur multiple times
 
 key <string> {
-        algorithm <string>;
-        secret <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
+       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 | static-ds |
-    initial-ds ) <integer> <integer>
-    <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
+managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
 
 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 [ port <integer> ] [ transport <string> ] {
-            <address_match_element>; ... };
-        allow-update { <address_match_element>; ... };
-        allow-update-forwarding { <address_match_element>; ... };
-        also-notify [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <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>;
-        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>; ... };
-        catalog-zones { zone <string> [ default-primaries [ port <integer>
-            ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [
-            port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key
-            <string> ] [ tls <string> ]; ... } ] [ zone-directory
-            <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval
-            <duration> ]; ... };
-        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>;
-        dnsrps-options { <unspecified-text> };
-        dnssec-accept-expired <boolean>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-must-be-secure <string> <boolean>; // may occur multiple times
-        dnssec-policy <string>;
-        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 ) ]; ... };
-        dnstap-identity ( <quoted_string> | none | hostname );
-        dnstap-output ( file | unix ) <quoted_string> [ size ( unlimited |
-            <size> ) ] [ versions ( unlimited | <integer> ) ] [ suffix (
-            increment | timestamp ) ];
-        dnstap-version ( <quoted_string> | none );
-        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>;
-        fstrm-set-flush-timeout <integer>;
-        fstrm-set-input-queue-size <integer>;
-        fstrm-set-output-notify-threshold <integer>;
-        fstrm-set-output-queue-model ( mpsc | spsc );
-        fstrm-set-output-queue-size <integer>;
-        fstrm-set-reopen-interval <duration>;
-        geoip-directory ( <quoted_string> | none );
-        heartbeat-interval <integer>;
-        hostname ( <quoted_string> | none );
-        http-listener-clients <integer>;
-        http-port <integer>;
-        http-streams-per-connection <integer>;
-        https-port <integer>;
-        interface-interval <duration>;
-        ipv4only-contact <string>;
-        ipv4only-enable <boolean>;
-        ipv4only-server <string>;
-        ixfr-from-differences ( primary | master | secondary | slave |
-            <boolean> );
-        key-directory <quoted_string>;
-        lame-ttl <duration>;
-        listen-on [ port <integer> ] [ dscp
-            <integer> ] [ tls <string> ] [ http
-            <string> ] {
-            <address_match_element>; ... }; // may occur multiple times
-        listen-on-v6 [ port <integer> ] [ dscp
-            <integer> ] [ tls <string> ] [ http
-            <string> ] {
-            <address_match_element>; ... }; // may occur multiple times
-        lmdb-mapsize <sizeval>;
-        lock-file ( <quoted_string> | none );
-        managed-keys-directory <quoted_string>;
-        masterfile-format ( raw | text );
-        masterfile-style ( full | relative );
-        match-mapped-addresses <boolean>;
-        max-cache-size ( default | unlimited | <sizeval> | <percentage> );
-        max-cache-ttl <duration>;
-        max-clients-per-query <integer>;
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-ncache-ttl <duration>;
-        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 <duration>;
-        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 | <duration> );
-        memstatistics <boolean>;
-        memstatistics-file <quoted_string>;
-        message-compression <boolean>;
-        min-cache-ttl <duration>;
-        min-ncache-ttl <duration>;
-        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 | primary-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 <duration>;
-        nta-recheck <duration>;
-        nxdomain-redirect <string>;
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        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>; // deprecated
-        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 <duration> ] [ min-update-interval
-            <duration> ] [ 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 <duration> ] [
-            min-update-interval <duration> ] [ min-ns-dots <integer> ] [
-            nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean>
-            ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ]
-            [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [
-            dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text>
-            } ];
-        reuseport <boolean>;
-        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 <duration>;
-        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-client-timeout ( disabled | off | <integer> );
-        stale-answer-enable <boolean>;
-        stale-answer-ttl <duration>;
-        stale-cache-enable <boolean>;
-        stale-refresh-time <duration>;
-        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>;
-        tcp-receive-buffer <integer>;
-        tcp-send-buffer <integer>;
-        tkey-dhkey <quoted_string> <integer>;
-        tkey-domain <quoted_string>;
-        tkey-gssapi-credential <quoted_string>;
-        tkey-gssapi-keytab <quoted_string>;
-        tls-port <integer>;
-        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>;
-        udp-receive-buffer <integer>;
-        udp-send-buffer <integer>;
-        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> );
+       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 [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
+       allow-update { <address_match_element>; ... };
+       allow-update-forwarding { <address_match_element>; ... };
+       also-notify [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <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>;
+       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>; ... };
+       catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
+       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-policy <string>;
+       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 <duration>; // not configured
+       geoip-directory ( <quoted_string> | none );
+       heartbeat-interval <integer>;
+       hostname ( <quoted_string> | none );
+       http-listener-clients <integer>;
+       http-port <integer>;
+       http-streams-per-connection <integer>;
+       https-port <integer>;
+       interface-interval <duration>;
+       ipv4only-contact <string>;
+       ipv4only-enable <boolean>;
+       ipv4only-server <string>;
+       ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
+       key-directory <quoted_string>;
+       lame-ttl <duration>;
+       listen-on [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
+       listen-on-v6 [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
+       lmdb-mapsize <sizeval>;
+       lock-file ( <quoted_string> | none );
+       managed-keys-directory <quoted_string>;
+       masterfile-format ( raw | text );
+       masterfile-style ( full | relative );
+       match-mapped-addresses <boolean>;
+       max-cache-size ( default | unlimited | <sizeval> | <percentage> );
+       max-cache-ttl <duration>;
+       max-clients-per-query <integer>;
+       max-ixfr-ratio ( unlimited | <percentage> );
+       max-journal-size ( default | unlimited | <sizeval> );
+       max-ncache-ttl <duration>;
+       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 <duration>;
+       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 | <duration> );
+       memstatistics <boolean>;
+       memstatistics-file <quoted_string>;
+       message-compression <boolean>;
+       min-cache-ttl <duration>;
+       min-ncache-ttl <duration>;
+       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 | primary-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 <duration>;
+       nta-recheck <duration>;
+       nxdomain-redirect <string>;
+       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       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>; // deprecated
+       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 <duration> ] [ min-update-interval <duration> ] [ 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 <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text> } ];
+       reuseport <boolean>;
+       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 <duration>;
+       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-client-timeout ( disabled | off | <integer> );
+       stale-answer-enable <boolean>;
+       stale-answer-ttl <duration>;
+       stale-cache-enable <boolean>;
+       stale-refresh-time <duration>;
+       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>;
+       tcp-receive-buffer <integer>;
+       tcp-send-buffer <integer>;
+       tkey-dhkey <quoted_string> <integer>;
+       tkey-domain <quoted_string>;
+       tkey-gssapi-credential <quoted_string>;
+       tkey-gssapi-keytab <quoted_string>;
+       tls-port <integer>;
+       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>;
+       udp-receive-buffer <integer>;
+       udp-send-buffer <integer>;
+       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> );
 };
 
-parental-agents <string> [ port <integer> ] [
-    dscp <integer> ] { ( <remote-servers> |
-    <ipv4_address> [ port <integer> ] |
-    <ipv6_address> [ port <integer> ] ) [ key
-    <string> ] [ tls <string> ]; ... }; // may occur multiple times
+parental-agents <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // may occur multiple times
 
-plugin ( query ) <string> [ { <unspecified-text>
-    } ]; // may occur multiple times
+plugin ( query ) <string> [ { <unspecified-text> } ]; // may occur multiple times
 
-primaries <string> [ port <integer> ] [ dscp
-    <integer> ] { ( <remote-servers> |
-    <ipv4_address> [ port <integer> ] |
-    <ipv6_address> [ port <integer> ] ) [ key
-    <string> ] [ tls <string> ]; ... }; // may occur multiple times
+primaries <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // 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>;
+       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
+       inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] [ allow { <address_match_element>; ... } ]; // may occur multiple times
 }; // may occur multiple times
 
 tls <string> {
-        ca-file <quoted_string>;
-        cert-file <quoted_string>;
-        ciphers <string>;
-        dhparam-file <quoted_string>;
-        key-file <quoted_string>;
-        prefer-server-ciphers <boolean>;
-        protocols { <string>; ... };
-        remote-hostname <quoted_string>;
-        session-tickets <boolean>;
+       ca-file <quoted_string>;
+       cert-file <quoted_string>;
+       ciphers <string>;
+       dhparam-file <quoted_string>;
+       key-file <quoted_string>;
+       prefer-server-ciphers <boolean>;
+       protocols { <string>; ... };
+       remote-hostname <quoted_string>;
+       session-tickets <boolean>;
 }; // may occur multiple times
 
-trust-anchors { <string> ( static-key |
-    initial-key | static-ds | initial-ds )
-    <integer> <integer> <integer>
-    <quoted_string>; ... }; // may occur multiple times
+trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
 
-trusted-keys { <string> <integer>
-    <integer> <integer>
-    <quoted_string>; ... }; // may occur multiple times, deprecated
+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 [ port <integer> ] [ transport <string> ] {
-            <address_match_element>; ... };
-        allow-update { <address_match_element>; ... };
-        allow-update-forwarding { <address_match_element>; ... };
-        also-notify [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <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>;
-        auto-dnssec ( allow | maintain | off );
-        catalog-zones { zone <string> [ default-primaries [ port <integer>
-            ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [
-            port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key
-            <string> ] [ tls <string> ]; ... } ] [ zone-directory
-            <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval
-            <duration> ]; ... };
-        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>;
-        dnsrps-options { <unspecified-text> };
-        dnssec-accept-expired <boolean>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-must-be-secure <string> <boolean>; // may occur multiple times
-        dnssec-policy <string>;
-        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 ) ]; ... };
-        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> ]; ... };
-        ipv4only-contact <string>;
-        ipv4only-enable <boolean>;
-        ipv4only-server <string>;
-        ixfr-from-differences ( primary | master | secondary | slave |
-            <boolean> );
-        key <string> {
-                algorithm <string>;
-                secret <string>;
-        }; // may occur multiple times
-        key-directory <quoted_string>;
-        lame-ttl <duration>;
-        lmdb-mapsize <sizeval>;
-        managed-keys { <string> (
-            static-key | initial-key
-            | static-ds | initial-ds
-            ) <integer> <integer>
-            <integer>
-            <quoted_string>; ... }; // may occur multiple times, deprecated
-        masterfile-format ( 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 <duration>;
-        max-clients-per-query <integer>;
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-ncache-ttl <duration>;
-        max-records <integer>;
-        max-recursion-depth <integer>;
-        max-recursion-queries <integer>;
-        max-refresh-time <integer>;
-        max-retry-time <integer>;
-        max-stale-ttl <duration>;
-        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 | <duration> );
-        message-compression <boolean>;
-        min-cache-ttl <duration>;
-        min-ncache-ttl <duration>;
-        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 | primary-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 <duration>;
-        nta-recheck <duration>;
-        nxdomain-redirect <string>;
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        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 <duration> ] [ min-update-interval
-            <duration> ] [ 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 <duration> ] [
-            min-update-interval <duration> ] [ min-ns-dots <integer> ] [
-            nsip-wait-recurse <boolean> ] [ nsdname-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 <duration>;
-        sig-signing-nodes <integer>;
-        sig-signing-signatures <integer>;
-        sig-signing-type <integer>;
-        sig-validity-interval <integer> [ <integer> ];
-        sortlist { <address_match_element>; ... };
-        stale-answer-client-timeout ( disabled | off | <integer> );
-        stale-answer-enable <boolean>;
-        stale-answer-ttl <duration>;
-        stale-cache-enable <boolean>;
-        stale-refresh-time <duration>;
-        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
-        trust-anchors { <string> ( static-key |
-            initial-key | static-ds | initial-ds
-            ) <integer> <integer> <integer>
-            <quoted_string>; ... }; // may occur multiple times
-        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-statistics ( full | terse | none | <boolean> );
+       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 [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
+       allow-update { <address_match_element>; ... };
+       allow-update-forwarding { <address_match_element>; ... };
+       also-notify [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <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>;
+       auto-dnssec ( allow | maintain | off );
+       catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
+       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-loadkeys-interval <integer>;
+       dnssec-must-be-secure <string> <boolean>; // may occur multiple times
+       dnssec-policy <string>;
+       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> ]; ... };
+       ipv4only-contact <string>;
+       ipv4only-enable <boolean>;
+       ipv4only-server <string>;
+       ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
+       key <string> {
+               algorithm <string>;
+               secret <string>;
+       }; // may occur multiple times
+       key-directory <quoted_string>;
+       lame-ttl <duration>;
+       lmdb-mapsize <sizeval>;
+       managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
+       masterfile-format ( 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 <duration>;
+       max-clients-per-query <integer>;
+       max-ixfr-ratio ( unlimited | <percentage> );
+       max-journal-size ( default | unlimited | <sizeval> );
+       max-ncache-ttl <duration>;
+       max-records <integer>;
+       max-recursion-depth <integer>;
+       max-recursion-queries <integer>;
+       max-refresh-time <integer>;
+       max-retry-time <integer>;
+       max-stale-ttl <duration>;
+       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 | <duration> );
+       message-compression <boolean>;
+       min-cache-ttl <duration>;
+       min-ncache-ttl <duration>;
+       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 | primary-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 <duration>;
+       nta-recheck <duration>;
+       nxdomain-redirect <string>;
+       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       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 <duration> ] [ min-update-interval <duration> ] [ 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 <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-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 <duration>;
+       sig-signing-nodes <integer>;
+       sig-signing-signatures <integer>;
+       sig-signing-type <integer>;
+       sig-validity-interval <integer> [ <integer> ];
+       sortlist { <address_match_element>; ... };
+       stale-answer-client-timeout ( disabled | off | <integer> );
+       stale-answer-enable <boolean>;
+       stale-answer-ttl <duration>;
+       stale-cache-enable <boolean>;
+       stale-refresh-time <duration>;
+       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
+       trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
+       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-statistics ( full | terse | none | <boolean> );
 }; // may occur multiple times
 
index d0e8eeea3ad4da35981cdc031c2edfd300eef154..b930acc843809ab116699854dbd006d9798d1d01 100644 (file)
        allow-query-on { <address_match_element>; ... };
        allow-recursion { <address_match_element>; ... };
        allow-recursion-on { <address_match_element>; ... };
-       allow-transfer [ port <integer> ] [ transport <string> ] {
-           <address_match_element>; ... };
+       allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
        allow-update { <address_match_element>; ... };
        allow-update-forwarding { <address_match_element>; ... };
-       also-notify [ port <integer> ] [ dscp <integer> ] { (
-           <remote-servers> | <ipv4_address> [ port <integer> ] |
-           <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-           <string> ]; ... };
-       alt-transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * )
-           ] [ dscp <integer> ];
-       alt-transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> |
-           * ) ] [ dscp <integer> ];
+       also-notify [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <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>;
        avoid-v6-udp-ports { <portrange>; ... };
        bindkeys-file <quoted_string>;
        blackhole { <address_match_element>; ... };
-       catalog-zones { zone <string> [ default-primaries [ port <integer>
-           ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [
-           port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key
-           <string> ] [ tls <string> ]; ... } ] [ zone-directory
-           <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval
-           <duration> ]; ... };
+       catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
        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 );
+       check-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore );
        check-sibling <boolean>;
        check-spf ( warn | ignore );
        check-srv-cname ( fail | warn | ignore );
        cookie-secret <string>;
        coresize ( default | unlimited | <sizeval> );
        datasize ( default | unlimited | <sizeval> );
-       deny-answer-addresses { <address_match_element>; ... } [
-           except-from { <string>; ... } ];
-       deny-answer-aliases { <string>; ... } [ except-from { <string>; ...
-           } ];
+       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>;
-           ... };
-       disable-ds-digests <string> { <string>;
-           ... };
+       disable-algorithms <string> { <string>; ... };
+       disable-ds-digests <string> { <string>; ... };
        disable-empty-zone <string>;
        dns64 <netprefix> {
                break-dnssec <boolean>;
        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 ) ]; ... };
+       dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... };
        dnstap-identity ( <quoted_string> | none | hostname );
-       dnstap-output ( file | unix ) <quoted_string> [ size ( unlimited |
-           <size> ) ] [ versions ( unlimited | <integer> ) ] [ suffix (
-           increment | timestamp ) ];
+       dnstap-output ( file | unix ) <quoted_string> [ size ( unlimited | <size> ) ] [ versions ( unlimited | <integer> ) ] [ suffix ( increment | timestamp ) ];
        dnstap-version ( <quoted_string> | none );
        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> ] ); ... };
+       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>;
        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> ]; ... };
+       forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
        fstrm-set-buffer-hint <integer>;
        fstrm-set-flush-timeout <integer>;
        fstrm-set-input-queue-size <integer>;
        ipv4only-contact <string>;
        ipv4only-enable <boolean>;
        ipv4only-server <string>;
-       ixfr-from-differences ( primary | master | secondary | slave |
-           <boolean> );
+       ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
        key-directory <quoted_string>;
        lame-ttl <duration>;
-       listen-on [ port <integer> ] [ dscp
-           <integer> ] [ tls <string> ] [ http
-           <string> ] {
-           <address_match_element>; ... };
-       listen-on-v6 [ port <integer> ] [ dscp
-           <integer> ] [ tls <string> ] [ http
-           <string> ] {
-           <address_match_element>; ... };
+       listen-on [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... };
+       listen-on-v6 [ port <integer> ] [ dscp <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... };
        lmdb-mapsize <sizeval>;
        lock-file ( <quoted_string> | none );
        managed-keys-directory <quoted_string>;
        notify ( explicit | master-only | primary-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-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       notify-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
        notify-to-soa <boolean>;
        nta-lifetime <duration>;
        nta-recheck <duration>;
        nxdomain-redirect <string>;
-       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-           dscp <integer> ];
-       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-           ] [ dscp <integer> ];
+       parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
        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> ];
+       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 {
        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 <duration> ] [ min-update-interval
-           <duration> ] [ 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 <duration> ] [
-           min-update-interval <duration> ] [ min-ns-dots <integer> ] [
-           nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean>
-           ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ]
-           [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [
-           dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text>
-           } ];
+       response-padding { <address_match_element>; ... } block-size <integer>;
+       response-policy { zone <string> [ add-soa <boolean> ] [ log <boolean> ] [ max-policy-ttl <duration> ] [ min-update-interval <duration> ] [ 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 <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text> } ];
        reuseport <boolean>;
        root-delegation-only [ exclude { <string>; ... } ];
        root-key-sentinel <boolean>;
-       rrset-order { [ class <string> ] [ type <string> ] [ name
-           <quoted_string> ] <string> <string>; ... };
+       rrset-order { [ class <string> ] [ type <string> ] [ name <quoted_string> ] <string> <string>; ... };
        secroots-file <quoted_string>;
        send-cookie <boolean>;
        serial-query-rate <integer>;
        tls-port <integer>;
        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> ];
+       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>;
index f30e6a81051a661532d19d78a2bb63e0fdd844d6..b09cc3378704421799a7cbd18f58d61605b7dc10 100644 (file)
@@ -11,8 +11,4 @@
 
 ::
 
-  parental-agents <string> [ port <integer> ] [
-      dscp <integer> ] { ( <remote-servers> |
-      <ipv4_address> [ port <integer> ] |
-      <ipv6_address> [ port <integer> ] ) [ key
-      <string> ] [ tls <string> ]; ... };
+  parental-agents <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
index aceea97306006bf52218303bf4814f07e19b9f6e..b6c680fb034ffcd57a847222f2347fa9a5edab4e 100644 (file)
@@ -11,8 +11,4 @@
 
 ::
 
-  primaries <string> [ port <integer> ] [ dscp
-      <integer> ] { ( <remote-servers> |
-      <ipv4_address> [ port <integer> ] |
-      <ipv6_address> [ port <integer> ] ) [ key
-      <string> ] [ tls <string> ]; ... };
+  primaries <string> [ port <integer> ] [ dscp <integer> ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
index 526636ec902d38c1596f99d56dafa5220851f52e..b62959ae7d430a84b621a5046e1f5c21a481b1e5 100644 (file)
        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> ];
+       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> ];
+       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>;
@@ -37,9 +31,7 @@
        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> ];
+       transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+       transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
        transfers <integer>;
   };
index 7a4ef27d253ed26a9d59060251da316d7c6fe68b..8e4d964598b700ab286c35fcbda6e52dc9e1cfcf 100644 (file)
@@ -12,8 +12,5 @@
 ::
 
   statistics-channels {
-       inet ( <ipv4_address> | <ipv6_address> |
-           * ) [ port ( <integer> | * ) ] [
-           allow { <address_match_element>; ...
-           } ];
+       inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] [ allow { <address_match_element>; ... } ];
   };
index eabe7c082c7cf85f45e4b1530766dea0faf6a764..e389e73be9890c46ccf3b4319c056671d527d765 100644 (file)
@@ -11,7 +11,4 @@
 
 ::
 
-  trust-anchors { <string> ( static-key |
-      initial-key | static-ds | initial-ds )
-      <integer> <integer> <integer>
-      <quoted_string>; ... };
+  trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... };
index 55cfa3805dfc37f642b673b7af6d488c4db3c6fb..47aa831815b619ef08336ab143a71b54288bd887 100644 (file)
@@ -11,6 +11,4 @@
 
 ::
 
-  trusted-keys { <string> <integer>
-      <integer> <integer>
-      <quoted_string>; ... };, deprecated
+  trusted-keys { <string> <integer> <integer> <integer> <quoted_string>; ... };, deprecated