]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
document zone grammar more correctly
authorEvan Hunt <each@isc.org>
Thu, 24 Feb 2022 01:36:11 +0000 (17:36 -0800)
committerEvan Hunt <each@isc.org>
Wed, 2 Mar 2022 09:53:24 +0000 (01:53 -0800)
the "zone" clause can be documented using, for instance,
`cfg_test --zonegrammar primary", which prints only
options that are valid in primary zones. this was not
the method being used when generating the named.conf
man page; instead, "zone" was documented with all possible
options, and no zone types at all.

this commit removes "zone" from the generic documentation
and adds include statements in named.conf.rst so that
correct zone grammars will be included in the man page.

bin/named/named.conf.rst
doc/man/named.conf.5in
doc/misc/Makefile.am
doc/misc/options
doc/misc/options.active
doc/misc/rst-options.pl
lib/isccfg/namedconf.c

index 57d603b94e008891d88327cc58e0a82baa06b39d..86d92aff9f68b2d61648fd54cfef7ced481c123f 100644 (file)
@@ -880,230 +880,19 @@ VIEW
        validate-except { string; ... };
        zero-no-soa-ttl boolean;
        zero-no-soa-ttl-cache boolean;
-       zone string [ class ] {
-               allow-notify { address_match_element; ... };
-               allow-query { address_match_element; ... };
-               allow-query-on { address_match_element; ... };
-               allow-transfer [ 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 ];
-               auto-dnssec ( allow | maintain | off );
-               check-dup-records ( fail | warn | ignore );
-               check-integrity boolean;
-               check-mx ( fail | warn | ignore );
-               check-mx-cname ( fail | warn | ignore );
-               check-names ( fail | warn | ignore );
-               check-sibling boolean;
-               check-spf ( warn | ignore );
-               check-srv-cname ( fail | warn | ignore );
-               check-wildcard boolean;
-               database string;
-               delegation-only boolean;
-               dialup ( notify | notify-passive | passive | refresh |
-                   boolean );
-               dlz string;
-               dnskey-sig-validity integer;
-               dnssec-dnskey-kskonly boolean;
-               dnssec-loadkeys-interval integer;
-               dnssec-policy string;
-               dnssec-secure-to-insecure boolean;
-               dnssec-update-mode ( maintain | no-resign );
-               file quoted_string;
-               forward ( first | only );
-               forwarders [ port integer ] [ dscp integer ] { (
-                   ipv4_address | ipv6_address ) [ port integer ] [
-                   dscp integer ]; ... };
-               in-view string;
-               inline-signing boolean;
-               ixfr-from-differences boolean;
-               journal quoted_string;
-               key-directory quoted_string;
-               masterfile-format ( raw | text );
-               masterfile-style ( full | relative );
-               max-ixfr-ratio ( unlimited | percentage );
-               max-journal-size ( default | unlimited | sizeval );
-               max-records integer;
-               max-refresh-time integer;
-               max-retry-time integer;
-               max-transfer-idle-in integer;
-               max-transfer-idle-out integer;
-               max-transfer-time-in integer;
-               max-transfer-time-out integer;
-               max-zone-ttl ( unlimited | duration );
-               min-refresh-time integer;
-               min-retry-time integer;
-               multi-master boolean;
-               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;
-               parental-agents [ port integer ] [ dscp integer ] { (
-                   remote-servers | ipv4_address [ port integer ] |
-                   ipv6_address [ port integer ] ) [ key string ] [
-                   tls string ]; ... };
-               parental-source ( ipv4_address | * ) [ port ( integer |
-                   * ) ] [ dscp integer ];
-               parental-source-v6 ( ipv6_address | * ) [ port (
-                   integer | * ) ] [ dscp integer ];
-               primaries [ port integer ] [ dscp integer ] { (
-                   remote-servers | ipv4_address [ port integer ] |
-                   ipv6_address [ port integer ] ) [ key string ] [
-                   tls string ]; ... };
-               request-expire boolean;
-               request-ixfr boolean;
-               serial-update-method ( date | increment | unixtime );
-               server-addresses { ( ipv4_address | ipv6_address ); ... };
-               server-names { string; ... };
-               sig-signing-nodes integer;
-               sig-signing-signatures integer;
-               sig-signing-type integer;
-               sig-validity-interval integer [ integer ];
-               transfer-source ( ipv4_address | * ) [ port ( integer |
-                   * ) ] [ dscp integer ];
-               transfer-source-v6 ( ipv6_address | * ) [ port (
-                   integer | * ) ] [ dscp integer ];
-               try-tcp-refresh boolean;
-               type ( primary | master | secondary | slave | mirror |
-                   delegation-only | forward | hint | redirect |
-                   static-stub | stub );
-               update-check-ksk boolean;
-               update-policy ( local | { ( deny | grant ) string (
-                   6to4-self | external | krb5-self | krb5-selfsub |
-                   krb5-subdomain | krb5-subdomain-self-rhs | ms-self |
-                   ms-selfsub | ms-subdomain | ms-subdomain-self-rhs |
-                   name | self | selfsub | selfwild | subdomain | tcp-self
-                   | wildcard | zonesub ) [ string ] rrtypelist; ... };
-               use-alt-transfer-source boolean;
-               zero-no-soa-ttl boolean;
-               zone-statistics ( full | terse | none | boolean );
-       };
        zone-statistics ( full | terse | none | boolean );
   };
 
-ZONE
-^^^^
-
-::
-
-  zone string [ class ] {
-       allow-notify { address_match_element; ... };
-       allow-query { address_match_element; ... };
-       allow-query-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 ];
-       auto-dnssec ( allow | maintain | off );
-       check-dup-records ( fail | warn | ignore );
-       check-integrity boolean;
-       check-mx ( fail | warn | ignore );
-       check-mx-cname ( fail | warn | ignore );
-       check-names ( fail | warn | ignore );
-       check-sibling boolean;
-       check-spf ( warn | ignore );
-       check-srv-cname ( fail | warn | ignore );
-       check-wildcard boolean;
-       database string;
-       delegation-only boolean;
-       dialup ( notify | notify-passive | passive | refresh | boolean );
-       dlz string;
-       dnskey-sig-validity integer;
-       dnssec-dnskey-kskonly boolean;
-       dnssec-loadkeys-interval integer;
-       dnssec-policy string;
-       dnssec-secure-to-insecure boolean;
-       dnssec-update-mode ( maintain | no-resign );
-       file quoted_string;
-       forward ( first | only );
-       forwarders [ port integer ] [ dscp integer ] { ( ipv4_address
-           | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
-       in-view string;
-       inline-signing boolean;
-       ixfr-from-differences boolean;
-       journal quoted_string;
-       key-directory quoted_string;
-       masterfile-format ( raw | text );
-       masterfile-style ( full | relative );
-       max-ixfr-ratio ( unlimited | percentage );
-       max-journal-size ( default | unlimited | sizeval );
-       max-records integer;
-       max-refresh-time integer;
-       max-retry-time integer;
-       max-transfer-idle-in integer;
-       max-transfer-idle-out integer;
-       max-transfer-time-in integer;
-       max-transfer-time-out integer;
-       max-zone-ttl ( unlimited | duration );
-       min-refresh-time integer;
-       min-retry-time integer;
-       multi-master boolean;
-       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;
-       parental-agents [ port integer ] [ dscp integer ] { (
-           remote-servers | ipv4_address [ port integer ] |
-           ipv6_address [ port integer ] ) [ key string ] [ tls
-           string ]; ... };
-       parental-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-           dscp integer ];
-       parental-source-v6 ( ipv6_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
-       primaries [ port integer ] [ dscp integer ] { (
-           remote-servers | ipv4_address [ port integer ] |
-           ipv6_address [ port integer ] ) [ key string ] [ tls
-           string ]; ... };
-       request-expire boolean;
-       request-ixfr boolean;
-       serial-update-method ( date | increment | unixtime );
-       server-addresses { ( ipv4_address | ipv6_address ); ... };
-       server-names { string; ... };
-       sig-signing-nodes integer;
-       sig-signing-signatures integer;
-       sig-signing-type integer;
-       sig-validity-interval integer [ integer ];
-       transfer-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-           dscp integer ];
-       transfer-source-v6 ( ipv6_address | * ) [ port ( integer | * )
-           ] [ dscp integer ];
-       try-tcp-refresh boolean;
-       type ( primary | master | secondary | slave | mirror |
-           delegation-only | forward | hint | redirect | static-stub |
-           stub );
-       update-check-ksk boolean;
-       update-policy ( local | { ( deny | grant ) string ( 6to4-self |
-           external | krb5-self | krb5-selfsub | krb5-subdomain |
-           krb5-subdomain-self-rhs | ms-self | ms-selfsub | ms-subdomain |
-           ms-subdomain-self-rhs | name | self | selfsub | selfwild |
-           subdomain | tcp-self | wildcard | zonesub ) [ string ]
-           rrtypelist; ... };
-       use-alt-transfer-source boolean;
-       zero-no-soa-ttl boolean;
-       zone-statistics ( full | terse | none | boolean );
-  };
+.. include:: ../../doc/misc/primary.zoneopt.rst
+.. include:: ../../doc/misc/secondary.zoneopt.rst
+.. include:: ../../doc/misc/mirror.zoneopt.rst
+.. include:: ../../doc/misc/forward.zoneopt.rst
+.. include:: ../../doc/misc/hint.zoneopt.rst
+.. include:: ../../doc/misc/redirect.zoneopt.rst
+.. include:: ../../doc/misc/static-stub.zoneopt.rst
+.. include:: ../../doc/misc/stub.zoneopt.rst
+.. include:: ../../doc/misc/delegation-only.zoneopt.rst
+.. include:: ../../doc/misc/in-view.zoneopt.rst
 
 Files
 ~~~~~
index bd8ffc8eb233d261ab4845c4e52026c0be94afe5..4a8290ade7e8c69024eea85ad417cf309c3c331c 100644 (file)
@@ -968,233 +968,334 @@ view string [ class ] {
       validate\-except { string; ... };
       zero\-no\-soa\-ttl boolean;
       zero\-no\-soa\-ttl\-cache boolean;
-      zone string [ class ] {
-              allow\-notify { address_match_element; ... };
-              allow\-query { address_match_element; ... };
-              allow\-query\-on { address_match_element; ... };
-              allow\-transfer [ 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 ];
-              auto\-dnssec ( allow | maintain | off );
-              check\-dup\-records ( fail | warn | ignore );
-              check\-integrity boolean;
-              check\-mx ( fail | warn | ignore );
-              check\-mx\-cname ( fail | warn | ignore );
-              check\-names ( fail | warn | ignore );
-              check\-sibling boolean;
-              check\-spf ( warn | ignore );
-              check\-srv\-cname ( fail | warn | ignore );
-              check\-wildcard boolean;
-              database string;
-              delegation\-only boolean;
-              dialup ( notify | notify\-passive | passive | refresh |
-                  boolean );
-              dlz string;
-              dnskey\-sig\-validity integer;
-              dnssec\-dnskey\-kskonly boolean;
-              dnssec\-loadkeys\-interval integer;
-              dnssec\-policy string;
-              dnssec\-secure\-to\-insecure boolean;
-              dnssec\-update\-mode ( maintain | no\-resign );
-              file quoted_string;
-              forward ( first | only );
-              forwarders [ port integer ] [ dscp integer ] { (
-                  ipv4_address | ipv6_address ) [ port integer ] [
-                  dscp integer ]; ... };
-              in\-view string;
-              inline\-signing boolean;
-              ixfr\-from\-differences boolean;
-              journal quoted_string;
-              key\-directory quoted_string;
-              masterfile\-format ( raw | text );
-              masterfile\-style ( full | relative );
-              max\-ixfr\-ratio ( unlimited | percentage );
-              max\-journal\-size ( default | unlimited | sizeval );
-              max\-records integer;
-              max\-refresh\-time integer;
-              max\-retry\-time integer;
-              max\-transfer\-idle\-in integer;
-              max\-transfer\-idle\-out integer;
-              max\-transfer\-time\-in integer;
-              max\-transfer\-time\-out integer;
-              max\-zone\-ttl ( unlimited | duration );
-              min\-refresh\-time integer;
-              min\-retry\-time integer;
-              multi\-master boolean;
-              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;
-              parental\-agents [ port integer ] [ dscp integer ] { (
-                  remote\-servers | ipv4_address [ port integer ] |
-                  ipv6_address [ port integer ] ) [ key string ] [
-                  tls string ]; ... };
-              parental\-source ( ipv4_address | * ) [ port ( integer |
-                  * ) ] [ dscp integer ];
-              parental\-source\-v6 ( ipv6_address | * ) [ port (
-                  integer | * ) ] [ dscp integer ];
-              primaries [ port integer ] [ dscp integer ] { (
-                  remote\-servers | ipv4_address [ port integer ] |
-                  ipv6_address [ port integer ] ) [ key string ] [
-                  tls string ]; ... };
-              request\-expire boolean;
-              request\-ixfr boolean;
-              serial\-update\-method ( date | increment | unixtime );
-              server\-addresses { ( ipv4_address | ipv6_address ); ... };
-              server\-names { string; ... };
-              sig\-signing\-nodes integer;
-              sig\-signing\-signatures integer;
-              sig\-signing\-type integer;
-              sig\-validity\-interval integer [ integer ];
-              transfer\-source ( ipv4_address | * ) [ port ( integer |
-                  * ) ] [ dscp integer ];
-              transfer\-source\-v6 ( ipv6_address | * ) [ port (
-                  integer | * ) ] [ dscp integer ];
-              try\-tcp\-refresh boolean;
-              type ( primary | master | secondary | slave | mirror |
-                  delegation\-only | forward | hint | redirect |
-                  static\-stub | stub );
-              update\-check\-ksk boolean;
-              update\-policy ( local | { ( deny | grant ) string (
-                  6to4\-self | external | krb5\-self | krb5\-selfsub |
-                  krb5\-subdomain | krb5\-subdomain\-self\-rhs | ms\-self |
-                  ms\-selfsub | ms\-subdomain | ms\-subdomain\-self\-rhs |
-                  name | self | selfsub | selfwild | subdomain | tcp\-self
-                  | wildcard | zonesub ) [ string ] rrtypelist; ... };
-              use\-alt\-transfer\-source boolean;
-              zero\-no\-soa\-ttl boolean;
-              zone\-statistics ( full | terse | none | boolean );
-      };
       zone\-statistics ( full | terse | none | boolean );
 };
 .ft P
 .fi
 .UNINDENT
 .UNINDENT
-.SS ZONE
 .INDENT 0.0
 .INDENT 3.5
 .sp
 .nf
 .ft C
-zone string [ class ] {
-      allow\-notify { address_match_element; ... };
-      allow\-query { address_match_element; ... };
-      allow\-query\-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 ];
+zone <string> [ <class> ] {
+      type primary;
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      allow\-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
+      allow\-update { <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> ];
       auto\-dnssec ( allow | maintain | off );
       check\-dup\-records ( fail | warn | ignore );
-      check\-integrity boolean;
+      check\-integrity <boolean>;
       check\-mx ( fail | warn | ignore );
       check\-mx\-cname ( fail | warn | ignore );
       check\-names ( fail | warn | ignore );
-      check\-sibling boolean;
+      check\-sibling <boolean>;
       check\-spf ( warn | ignore );
       check\-srv\-cname ( fail | warn | ignore );
-      check\-wildcard boolean;
-      database string;
-      delegation\-only boolean;
-      dialup ( notify | notify\-passive | passive | refresh | boolean );
-      dlz string;
-      dnskey\-sig\-validity integer;
-      dnssec\-dnskey\-kskonly boolean;
-      dnssec\-loadkeys\-interval integer;
-      dnssec\-policy string;
-      dnssec\-secure\-to\-insecure boolean;
+      check\-wildcard <boolean>;
+      database <string>;
+      dialup ( notify | notify\-passive | passive | refresh | <boolean> );
+      dlz <string>;
+      dnskey\-sig\-validity <integer>;
+      dnssec\-dnskey\-kskonly <boolean>;
+      dnssec\-loadkeys\-interval <integer>;
+      dnssec\-policy <string>;
+      dnssec\-secure\-to\-insecure <boolean>;
       dnssec\-update\-mode ( maintain | no\-resign );
-      file quoted_string;
+      file <quoted_string>;
       forward ( first | only );
-      forwarders [ port integer ] [ dscp integer ] { ( ipv4_address
-          | ipv6_address ) [ port integer ] [ dscp integer ]; ... };
-      in\-view string;
-      inline\-signing boolean;
-      ixfr\-from\-differences boolean;
-      journal quoted_string;
-      key\-directory quoted_string;
+      forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
+      inline\-signing <boolean>;
+      ixfr\-from\-differences <boolean>;
+      journal <quoted_string>;
+      key\-directory <quoted_string>;
       masterfile\-format ( raw | text );
       masterfile\-style ( full | relative );
-      max\-ixfr\-ratio ( unlimited | percentage );
-      max\-journal\-size ( default | unlimited | sizeval );
-      max\-records integer;
-      max\-refresh\-time integer;
-      max\-retry\-time integer;
-      max\-transfer\-idle\-in integer;
-      max\-transfer\-idle\-out integer;
-      max\-transfer\-time\-in integer;
-      max\-transfer\-time\-out integer;
-      max\-zone\-ttl ( unlimited | duration );
-      min\-refresh\-time integer;
-      min\-retry\-time integer;
-      multi\-master boolean;
-      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;
-      parental\-agents [ port integer ] [ dscp integer ] { (
-          remote\-servers | ipv4_address [ port integer ] |
-          ipv6_address [ port integer ] ) [ key string ] [ tls
-          string ]; ... };
-      parental\-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-          dscp integer ];
-      parental\-source\-v6 ( ipv6_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
-      primaries [ port integer ] [ dscp integer ] { (
-          remote\-servers | ipv4_address [ port integer ] |
-          ipv6_address [ port integer ] ) [ key string ] [ tls
-          string ]; ... };
-      request\-expire boolean;
-      request\-ixfr boolean;
+      max\-ixfr\-ratio ( unlimited | <percentage> );
+      max\-journal\-size ( default | unlimited | <sizeval> );
+      max\-records <integer>;
+      max\-transfer\-idle\-out <integer>;
+      max\-transfer\-time\-out <integer>;
+      max\-zone\-ttl ( unlimited | <duration> );
+      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>;
+      parental\-agents [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      parental\-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      parental\-source\-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
       serial\-update\-method ( date | increment | unixtime );
-      server\-addresses { ( ipv4_address | ipv6_address ); ... };
-      server\-names { string; ... };
-      sig\-signing\-nodes integer;
-      sig\-signing\-signatures integer;
-      sig\-signing\-type integer;
-      sig\-validity\-interval integer [ integer ];
-      transfer\-source ( ipv4_address | * ) [ port ( integer | * ) ] [
-          dscp integer ];
-      transfer\-source\-v6 ( ipv6_address | * ) [ port ( integer | * )
-          ] [ dscp integer ];
-      try\-tcp\-refresh boolean;
-      type ( primary | master | secondary | slave | mirror |
-          delegation\-only | forward | hint | redirect | static\-stub |
-          stub );
-      update\-check\-ksk boolean;
-      update\-policy ( local | { ( deny | grant ) string ( 6to4\-self |
-          external | krb5\-self | krb5\-selfsub | krb5\-subdomain |
-          krb5\-subdomain\-self\-rhs | ms\-self | ms\-selfsub | ms\-subdomain |
-          ms\-subdomain\-self\-rhs | name | self | selfsub | selfwild |
-          subdomain | tcp\-self | wildcard | zonesub ) [ string ]
-          rrtypelist; ... };
-      use\-alt\-transfer\-source boolean;
-      zero\-no\-soa\-ttl boolean;
-      zone\-statistics ( full | terse | none | boolean );
+      sig\-signing\-nodes <integer>;
+      sig\-signing\-signatures <integer>;
+      sig\-signing\-type <integer>;
+      sig\-validity\-interval <integer> [ <integer> ];
+      update\-check\-ksk <boolean>;
+      update\-policy ( local | { ( deny | grant ) <string> ( 6to4\-self | external | krb5\-self | krb5\-selfsub | krb5\-subdomain | krb5\-subdomain\-self\-rhs | ms\-self | ms\-selfsub | ms\-subdomain | ms\-subdomain\-self\-rhs | name | self | selfsub | selfwild | subdomain | tcp\-self | wildcard | zonesub ) [ <string> ] <rrtypelist>; ... };
+      zero\-no\-soa\-ttl <boolean>;
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type secondary;
+      allow\-notify { <address_match_element>; ... };
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      allow\-transfer [ port <integer> ] [ transport <string> ] { <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> ];
+      auto\-dnssec ( allow | maintain | off );
+      check\-names ( fail | warn | ignore );
+      database <string>;
+      dialup ( notify | notify\-passive | passive | refresh | <boolean> );
+      dlz <string>;
+      dnskey\-sig\-validity <integer>;
+      dnssec\-dnskey\-kskonly <boolean>;
+      dnssec\-loadkeys\-interval <integer>;
+      dnssec\-policy <string>;
+      dnssec\-update\-mode ( maintain | no\-resign );
+      file <quoted_string>;
+      forward ( first | only );
+      forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
+      inline\-signing <boolean>;
+      ixfr\-from\-differences <boolean>;
+      journal <quoted_string>;
+      key\-directory <quoted_string>;
+      masterfile\-format ( raw | text );
+      masterfile\-style ( full | relative );
+      max\-ixfr\-ratio ( unlimited | <percentage> );
+      max\-journal\-size ( default | unlimited | <sizeval> );
+      max\-records <integer>;
+      max\-refresh\-time <integer>;
+      max\-retry\-time <integer>;
+      max\-transfer\-idle\-in <integer>;
+      max\-transfer\-idle\-out <integer>;
+      max\-transfer\-time\-in <integer>;
+      max\-transfer\-time\-out <integer>;
+      min\-refresh\-time <integer>;
+      min\-retry\-time <integer>;
+      multi\-master <boolean>;
+      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>;
+      parental\-agents [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      parental\-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      parental\-source\-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      primaries [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      request\-expire <boolean>;
+      request\-ixfr <boolean>;
+      sig\-signing\-nodes <integer>;
+      sig\-signing\-signatures <integer>;
+      sig\-signing\-type <integer>;
+      sig\-validity\-interval <integer> [ <integer> ];
+      transfer\-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      transfer\-source\-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      try\-tcp\-refresh <boolean>;
+      update\-check\-ksk <boolean>;
+      use\-alt\-transfer\-source <boolean>;
+      zero\-no\-soa\-ttl <boolean>;
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type mirror;
+      allow\-notify { <address_match_element>; ... };
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      allow\-transfer [ port <integer> ] [ transport <string> ] { <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> ];
+      check\-names ( fail | warn | ignore );
+      database <string>;
+      file <quoted_string>;
+      ixfr\-from\-differences <boolean>;
+      journal <quoted_string>;
+      masterfile\-format ( raw | text );
+      masterfile\-style ( full | relative );
+      max\-ixfr\-ratio ( unlimited | <percentage> );
+      max\-journal\-size ( default | unlimited | <sizeval> );
+      max\-records <integer>;
+      max\-refresh\-time <integer>;
+      max\-retry\-time <integer>;
+      max\-transfer\-idle\-in <integer>;
+      max\-transfer\-idle\-out <integer>;
+      max\-transfer\-time\-in <integer>;
+      max\-transfer\-time\-out <integer>;
+      min\-refresh\-time <integer>;
+      min\-retry\-time <integer>;
+      multi\-master <boolean>;
+      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> ];
+      primaries [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      request\-expire <boolean>;
+      request\-ixfr <boolean>;
+      transfer\-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      transfer\-source\-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      try\-tcp\-refresh <boolean>;
+      use\-alt\-transfer\-source <boolean>;
+      zero\-no\-soa\-ttl <boolean>;
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type forward;
+      delegation\-only <boolean>;
+      forward ( first | only );
+      forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type hint;
+      check\-names ( fail | warn | ignore );
+      delegation\-only <boolean>;
+      file <quoted_string>;
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type redirect;
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      dlz <string>;
+      file <quoted_string>;
+      masterfile\-format ( raw | text );
+      masterfile\-style ( full | relative );
+      max\-records <integer>;
+      max\-zone\-ttl ( unlimited | <duration> );
+      primaries [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type static\-stub;
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      forward ( first | only );
+      forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
+      max\-records <integer>;
+      server\-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
+      server\-names { <string>; ... };
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type stub;
+      allow\-query { <address_match_element>; ... };
+      allow\-query\-on { <address_match_element>; ... };
+      check\-names ( fail | warn | ignore );
+      database <string>;
+      delegation\-only <boolean>;
+      dialup ( notify | notify\-passive | passive | refresh | <boolean> );
+      file <quoted_string>;
+      forward ( first | only );
+      forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
+      masterfile\-format ( raw | text );
+      masterfile\-style ( full | relative );
+      max\-records <integer>;
+      max\-refresh\-time <integer>;
+      max\-retry\-time <integer>;
+      max\-transfer\-idle\-in <integer>;
+      max\-transfer\-time\-in <integer>;
+      min\-refresh\-time <integer>;
+      min\-retry\-time <integer>;
+      multi\-master <boolean>;
+      primaries [ port <integer> ] [ dscp <integer> ] { ( <remote\-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
+      transfer\-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      transfer\-source\-v6 ( <ipv6_address> | * ) [ port ( <integer> | * ) ] [ dscp <integer> ];
+      use\-alt\-transfer\-source <boolean>;
+      zone\-statistics ( full | terse | none | <boolean> );
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      type delegation\-only;
+};
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+zone <string> [ <class> ] {
+      in\-view <string>;
 };
 .ft P
 .fi
index a2fa397d1bc7206c1cdd6ee8f0ec854b59a2820c..4b88580b1200dcd5105c5e79c46b583ecaaad3b7 100644 (file)
@@ -105,7 +105,7 @@ delegation-only.zoneopt: cfg_test
 in-view.zoneopt: cfg_test
        $(AM_V_CFG_TEST)$(builddir)/cfg_test --zonegrammar in-view --active > $@
 
-../../bin/named/named.conf.rst: options.active rst-options.pl
+../../bin/named/named.conf.rst: options.active rst-options.pl delegation-only.zoneopt.rst forward.zoneopt.rst hint.zoneopt.rst in-view.zoneopt.rst mirror.zoneopt.rst primary.zoneopt.rst redirect.zoneopt.rst secondary.zoneopt.rst static-stub.zoneopt.rst stub.zoneopt.rst
        $(AM_V_RST_OPTIONS)$(PERL) $(srcdir)/rst-options.pl options.active > $@
 
 primary.zoneopt.rst: primary.zoneopt rst-zoneopt.pl
index 2aca017155d5b18e27dcb8502f65707122cf7ade..673cd3b791592d862bb839cca87a4b8acc90a1ad 100644 (file)
@@ -756,225 +756,6 @@ view <string> [ <class> ] {
         validate-except { <string>; ... };
         zero-no-soa-ttl <boolean>;
         zero-no-soa-ttl-cache <boolean>;
-        zone <string> [ <class> ] {
-                allow-notify { <address_match_element>; ... };
-                allow-query { <address_match_element>; ... };
-                allow-query-on { <address_match_element>; ... };
-                allow-transfer [ 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> ];
-                auto-dnssec ( allow | maintain | off );
-                check-dup-records ( fail | warn | ignore );
-                check-integrity <boolean>;
-                check-mx ( fail | warn | ignore );
-                check-mx-cname ( fail | warn | ignore );
-                check-names ( fail | warn | ignore );
-                check-sibling <boolean>;
-                check-spf ( warn | ignore );
-                check-srv-cname ( fail | warn | ignore );
-                check-wildcard <boolean>;
-                database <string>;
-                delegation-only <boolean>;
-                dialup ( notify | notify-passive | passive | refresh |
-                    <boolean> );
-                dlz <string>;
-                dnskey-sig-validity <integer>;
-                dnssec-dnskey-kskonly <boolean>;
-                dnssec-loadkeys-interval <integer>;
-                dnssec-policy <string>;
-                dnssec-secure-to-insecure <boolean>;
-                dnssec-update-mode ( maintain | no-resign );
-                file <quoted_string>;
-                forward ( first | only );
-                forwarders [ port <integer> ] [ dscp <integer> ] { (
-                    <ipv4_address> | <ipv6_address> ) [ port <integer> ] [
-                    dscp <integer> ]; ... };
-                in-view <string>;
-                inline-signing <boolean>;
-                ixfr-from-differences <boolean>;
-                journal <quoted_string>;
-                key-directory <quoted_string>;
-                masterfile-format ( raw | text );
-                masterfile-style ( full | relative );
-                max-ixfr-ratio ( unlimited | <percentage> );
-                max-journal-size ( default | unlimited | <sizeval> );
-                max-records <integer>;
-                max-refresh-time <integer>;
-                max-retry-time <integer>;
-                max-transfer-idle-in <integer>;
-                max-transfer-idle-out <integer>;
-                max-transfer-time-in <integer>;
-                max-transfer-time-out <integer>;
-                max-zone-ttl ( unlimited | <duration> );
-                min-refresh-time <integer>;
-                min-retry-time <integer>;
-                multi-master <boolean>;
-                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
-                parental-agents [ port <integer> ] [ dscp <integer> ] { (
-                    <remote-servers> | <ipv4_address> [ port <integer> ] |
-                    <ipv6_address> [ port <integer> ] ) [ key <string> ] [
-                    tls <string> ]; ... };
-                parental-source ( <ipv4_address> | * ) [ port ( <integer> |
-                    * ) ] [ dscp <integer> ];
-                parental-source-v6 ( <ipv6_address> | * ) [ port (
-                    <integer> | * ) ] [ dscp <integer> ];
-                primaries [ port <integer> ] [ dscp <integer> ] { (
-                    <remote-servers> | <ipv4_address> [ port <integer> ] |
-                    <ipv6_address> [ port <integer> ] ) [ key <string> ] [
-                    tls <string> ]; ... };
-                request-expire <boolean>;
-                request-ixfr <boolean>;
-                serial-update-method ( date | increment | unixtime );
-                server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
-                server-names { <string>; ... };
-                sig-signing-nodes <integer>;
-                sig-signing-signatures <integer>;
-                sig-signing-type <integer>;
-                sig-validity-interval <integer> [ <integer> ];
-                transfer-source ( <ipv4_address> | * ) [ port ( <integer> |
-                    * ) ] [ dscp <integer> ];
-                transfer-source-v6 ( <ipv6_address> | * ) [ port (
-                    <integer> | * ) ] [ dscp <integer> ];
-                try-tcp-refresh <boolean>;
-                type ( primary | master | secondary | slave | mirror |
-                    delegation-only | forward | hint | redirect |
-                    static-stub | stub );
-                update-check-ksk <boolean>;
-                update-policy ( local | { ( deny | grant ) <string> (
-                    6to4-self | external | krb5-self | krb5-selfsub |
-                    krb5-subdomain | krb5-subdomain-self-rhs | ms-self |
-                    ms-selfsub | ms-subdomain | ms-subdomain-self-rhs |
-                    name | self | selfsub | selfwild | subdomain | tcp-self
-                    | wildcard | zonesub ) [ <string> ] <rrtypelist>; ... };
-                use-alt-transfer-source <boolean>;
-                zero-no-soa-ttl <boolean>;
-                zone-statistics ( full | terse | none | <boolean> );
-        }; // may occur multiple times
-        zone-statistics ( full | terse | none | <boolean> );
-}; // may occur multiple times
-
-zone <string> [ <class> ] {
-        allow-notify { <address_match_element>; ... };
-        allow-query { <address_match_element>; ... };
-        allow-query-on { <address_match_element>; ... };
-        allow-transfer [ 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> ];
-        auto-dnssec ( allow | maintain | off );
-        check-dup-records ( fail | warn | ignore );
-        check-integrity <boolean>;
-        check-mx ( fail | warn | ignore );
-        check-mx-cname ( fail | warn | ignore );
-        check-names ( fail | warn | ignore );
-        check-sibling <boolean>;
-        check-spf ( warn | ignore );
-        check-srv-cname ( fail | warn | ignore );
-        check-wildcard <boolean>;
-        database <string>;
-        delegation-only <boolean>;
-        dialup ( notify | notify-passive | passive | refresh | <boolean> );
-        dlz <string>;
-        dnskey-sig-validity <integer>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-policy <string>;
-        dnssec-secure-to-insecure <boolean>;
-        dnssec-update-mode ( maintain | no-resign );
-        file <quoted_string>;
-        forward ( first | only );
-        forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address>
-            | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
-        in-view <string>;
-        inline-signing <boolean>;
-        ixfr-from-differences <boolean>;
-        journal <quoted_string>;
-        key-directory <quoted_string>;
-        masterfile-format ( raw | text );
-        masterfile-style ( full | relative );
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-records <integer>;
-        max-refresh-time <integer>;
-        max-retry-time <integer>;
-        max-transfer-idle-in <integer>;
-        max-transfer-idle-out <integer>;
-        max-transfer-time-in <integer>;
-        max-transfer-time-out <integer>;
-        max-zone-ttl ( unlimited | <duration> );
-        min-refresh-time <integer>;
-        min-retry-time <integer>;
-        multi-master <boolean>;
-        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
-        parental-agents [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <string> ]; ... };
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        primaries [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <string> ]; ... };
-        request-expire <boolean>;
-        request-ixfr <boolean>;
-        serial-update-method ( date | increment | unixtime );
-        server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
-        server-names { <string>; ... };
-        sig-signing-nodes <integer>;
-        sig-signing-signatures <integer>;
-        sig-signing-type <integer>;
-        sig-validity-interval <integer> [ <integer> ];
-        transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        try-tcp-refresh <boolean>;
-        type ( primary | master | secondary | slave | mirror |
-            delegation-only | forward | hint | redirect | static-stub |
-            stub );
-        update-check-ksk <boolean>;
-        update-policy ( local | { ( deny | grant ) <string> ( 6to4-self |
-            external | krb5-self | krb5-selfsub | krb5-subdomain |
-            krb5-subdomain-self-rhs | ms-self | ms-selfsub | ms-subdomain |
-            ms-subdomain-self-rhs | name | self | selfsub | selfwild |
-            subdomain | tcp-self | wildcard | zonesub ) [ <string> ]
-            <rrtypelist>; ... };
-        use-alt-transfer-source <boolean>;
-        zero-no-soa-ttl <boolean>;
         zone-statistics ( full | terse | none | <boolean> );
 }; // may occur multiple times
 
index 7944b1d10554efc215c45cae79fca230b98bc9c2..f95a9018765a79c0dc8ebfc5c96d6eafb37e09f9 100644 (file)
@@ -750,223 +750,6 @@ view <string> [ <class> ] {
         validate-except { <string>; ... };
         zero-no-soa-ttl <boolean>;
         zero-no-soa-ttl-cache <boolean>;
-        zone <string> [ <class> ] {
-                allow-notify { <address_match_element>; ... };
-                allow-query { <address_match_element>; ... };
-                allow-query-on { <address_match_element>; ... };
-                allow-transfer [ 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> ];
-                auto-dnssec ( allow | maintain | off );
-                check-dup-records ( fail | warn | ignore );
-                check-integrity <boolean>;
-                check-mx ( fail | warn | ignore );
-                check-mx-cname ( fail | warn | ignore );
-                check-names ( fail | warn | ignore );
-                check-sibling <boolean>;
-                check-spf ( warn | ignore );
-                check-srv-cname ( fail | warn | ignore );
-                check-wildcard <boolean>;
-                database <string>;
-                delegation-only <boolean>;
-                dialup ( notify | notify-passive | passive | refresh |
-                    <boolean> );
-                dlz <string>;
-                dnskey-sig-validity <integer>;
-                dnssec-dnskey-kskonly <boolean>;
-                dnssec-loadkeys-interval <integer>;
-                dnssec-policy <string>;
-                dnssec-secure-to-insecure <boolean>;
-                dnssec-update-mode ( maintain | no-resign );
-                file <quoted_string>;
-                forward ( first | only );
-                forwarders [ port <integer> ] [ dscp <integer> ] { (
-                    <ipv4_address> | <ipv6_address> ) [ port <integer> ] [
-                    dscp <integer> ]; ... };
-                in-view <string>;
-                inline-signing <boolean>;
-                ixfr-from-differences <boolean>;
-                journal <quoted_string>;
-                key-directory <quoted_string>;
-                masterfile-format ( raw | text );
-                masterfile-style ( full | relative );
-                max-ixfr-ratio ( unlimited | <percentage> );
-                max-journal-size ( default | unlimited | <sizeval> );
-                max-records <integer>;
-                max-refresh-time <integer>;
-                max-retry-time <integer>;
-                max-transfer-idle-in <integer>;
-                max-transfer-idle-out <integer>;
-                max-transfer-time-in <integer>;
-                max-transfer-time-out <integer>;
-                max-zone-ttl ( unlimited | <duration> );
-                min-refresh-time <integer>;
-                min-retry-time <integer>;
-                multi-master <boolean>;
-                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>;
-                parental-agents [ port <integer> ] [ dscp <integer> ] { (
-                    <remote-servers> | <ipv4_address> [ port <integer> ] |
-                    <ipv6_address> [ port <integer> ] ) [ key <string> ] [
-                    tls <string> ]; ... };
-                parental-source ( <ipv4_address> | * ) [ port ( <integer> |
-                    * ) ] [ dscp <integer> ];
-                parental-source-v6 ( <ipv6_address> | * ) [ port (
-                    <integer> | * ) ] [ dscp <integer> ];
-                primaries [ port <integer> ] [ dscp <integer> ] { (
-                    <remote-servers> | <ipv4_address> [ port <integer> ] |
-                    <ipv6_address> [ port <integer> ] ) [ key <string> ] [
-                    tls <string> ]; ... };
-                request-expire <boolean>;
-                request-ixfr <boolean>;
-                serial-update-method ( date | increment | unixtime );
-                server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
-                server-names { <string>; ... };
-                sig-signing-nodes <integer>;
-                sig-signing-signatures <integer>;
-                sig-signing-type <integer>;
-                sig-validity-interval <integer> [ <integer> ];
-                transfer-source ( <ipv4_address> | * ) [ port ( <integer> |
-                    * ) ] [ dscp <integer> ];
-                transfer-source-v6 ( <ipv6_address> | * ) [ port (
-                    <integer> | * ) ] [ dscp <integer> ];
-                try-tcp-refresh <boolean>;
-                type ( primary | master | secondary | slave | mirror |
-                    delegation-only | forward | hint | redirect |
-                    static-stub | stub );
-                update-check-ksk <boolean>;
-                update-policy ( local | { ( deny | grant ) <string> (
-                    6to4-self | external | krb5-self | krb5-selfsub |
-                    krb5-subdomain | krb5-subdomain-self-rhs | ms-self |
-                    ms-selfsub | ms-subdomain | ms-subdomain-self-rhs |
-                    name | self | selfsub | selfwild | subdomain | tcp-self
-                    | wildcard | zonesub ) [ <string> ] <rrtypelist>; ... };
-                use-alt-transfer-source <boolean>;
-                zero-no-soa-ttl <boolean>;
-                zone-statistics ( full | terse | none | <boolean> );
-        }; // may occur multiple times
-        zone-statistics ( full | terse | none | <boolean> );
-}; // may occur multiple times
-
-zone <string> [ <class> ] {
-        allow-notify { <address_match_element>; ... };
-        allow-query { <address_match_element>; ... };
-        allow-query-on { <address_match_element>; ... };
-        allow-transfer [ 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> ];
-        auto-dnssec ( allow | maintain | off );
-        check-dup-records ( fail | warn | ignore );
-        check-integrity <boolean>;
-        check-mx ( fail | warn | ignore );
-        check-mx-cname ( fail | warn | ignore );
-        check-names ( fail | warn | ignore );
-        check-sibling <boolean>;
-        check-spf ( warn | ignore );
-        check-srv-cname ( fail | warn | ignore );
-        check-wildcard <boolean>;
-        database <string>;
-        delegation-only <boolean>;
-        dialup ( notify | notify-passive | passive | refresh | <boolean> );
-        dlz <string>;
-        dnskey-sig-validity <integer>;
-        dnssec-dnskey-kskonly <boolean>;
-        dnssec-loadkeys-interval <integer>;
-        dnssec-policy <string>;
-        dnssec-secure-to-insecure <boolean>;
-        dnssec-update-mode ( maintain | no-resign );
-        file <quoted_string>;
-        forward ( first | only );
-        forwarders [ port <integer> ] [ dscp <integer> ] { ( <ipv4_address>
-            | <ipv6_address> ) [ port <integer> ] [ dscp <integer> ]; ... };
-        in-view <string>;
-        inline-signing <boolean>;
-        ixfr-from-differences <boolean>;
-        journal <quoted_string>;
-        key-directory <quoted_string>;
-        masterfile-format ( raw | text );
-        masterfile-style ( full | relative );
-        max-ixfr-ratio ( unlimited | <percentage> );
-        max-journal-size ( default | unlimited | <sizeval> );
-        max-records <integer>;
-        max-refresh-time <integer>;
-        max-retry-time <integer>;
-        max-transfer-idle-in <integer>;
-        max-transfer-idle-out <integer>;
-        max-transfer-time-in <integer>;
-        max-transfer-time-out <integer>;
-        max-zone-ttl ( unlimited | <duration> );
-        min-refresh-time <integer>;
-        min-retry-time <integer>;
-        multi-master <boolean>;
-        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>;
-        parental-agents [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <string> ]; ... };
-        parental-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        parental-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        primaries [ port <integer> ] [ dscp <integer> ] { (
-            <remote-servers> | <ipv4_address> [ port <integer> ] |
-            <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls
-            <string> ]; ... };
-        request-expire <boolean>;
-        request-ixfr <boolean>;
-        serial-update-method ( date | increment | unixtime );
-        server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
-        server-names { <string>; ... };
-        sig-signing-nodes <integer>;
-        sig-signing-signatures <integer>;
-        sig-signing-type <integer>;
-        sig-validity-interval <integer> [ <integer> ];
-        transfer-source ( <ipv4_address> | * ) [ port ( <integer> | * ) ] [
-            dscp <integer> ];
-        transfer-source-v6 ( <ipv6_address> | * ) [ port ( <integer> | * )
-            ] [ dscp <integer> ];
-        try-tcp-refresh <boolean>;
-        type ( primary | master | secondary | slave | mirror |
-            delegation-only | forward | hint | redirect | static-stub |
-            stub );
-        update-check-ksk <boolean>;
-        update-policy ( local | { ( deny | grant ) <string> ( 6to4-self |
-            external | krb5-self | krb5-selfsub | krb5-subdomain |
-            krb5-subdomain-self-rhs | ms-self | ms-selfsub | ms-subdomain |
-            ms-subdomain-self-rhs | name | self | selfsub | selfwild |
-            subdomain | tcp-self | wildcard | zonesub ) [ <string> ]
-            <rrtypelist>; ... };
-        use-alt-transfer-source <boolean>;
-        zero-no-soa-ttl <boolean>;
         zone-statistics ( full | terse | none | <boolean> );
 }; // may occur multiple times
 
index 695144693bc6df216cb9fa862425b5bb92884bac..7526ea4f4c2aaaa1ae25f8dda2c2a4b8d234fd09 100644 (file)
@@ -122,6 +122,17 @@ while (<FH>) {
 }
 
 print <<END;
+.. include:: ../../doc/misc/primary.zoneopt.rst
+.. include:: ../../doc/misc/secondary.zoneopt.rst
+.. include:: ../../doc/misc/mirror.zoneopt.rst
+.. include:: ../../doc/misc/forward.zoneopt.rst
+.. include:: ../../doc/misc/hint.zoneopt.rst
+.. include:: ../../doc/misc/redirect.zoneopt.rst
+.. include:: ../../doc/misc/static-stub.zoneopt.rst
+.. include:: ../../doc/misc/stub.zoneopt.rst
+.. include:: ../../doc/misc/delegation-only.zoneopt.rst
+.. include:: ../../doc/misc/in-view.zoneopt.rst
+
 Files
 ~~~~~
 
index 4f4ded601073c22e1fa22830eb6363668e7d6d2f..36e20cd1b28408cc2d0bc339162fe44f66d24dd6 100644 (file)
@@ -1184,7 +1184,7 @@ static cfg_clausedef_t namedconf_or_view_clauses[] = {
        { "trust-anchors", &cfg_type_dnsseckeys, CFG_CLAUSEFLAG_MULTI },
        { "trusted-keys", &cfg_type_trustedkeys,
          CFG_CLAUSEFLAG_MULTI | CFG_CLAUSEFLAG_DEPRECATED },
-       { "zone", &cfg_type_zone, CFG_CLAUSEFLAG_MULTI },
+       { "zone", &cfg_type_zone, CFG_CLAUSEFLAG_MULTI | CFG_CLAUSEFLAG_NODOC },
        { NULL, NULL, 0 }
 };