Commit Graph
6707 Commits
Author SHA1 Message Date
Petr Špaček c6fe8970f6 Render statement's grammar
This is replacement for auto-generated *.rst files stored in the repo.
2022-07-01 08:59:23 +02:00
Petr Špaček eba3b1ad16 Render list of blocks accepting a given statement 2022-07-01 08:59:23 +02:00
Petr Špaček d61d998e3b Detect unsupported statement:: directives with multiple names 2022-07-01 08:59:23 +02:00
Petr Špaček ebe6ede2ec Warn about statements not found in the grammar 2022-07-01 08:59:23 +02:00
Petr Špaček cbad1803a5 Warn about statements in grammar not described in docs
Skip over obsolete options.
2022-07-01 08:59:22 +02:00
Petr Špaček 1c6f2c5ad1 Give Sphinx configuration domains access to grammar 2022-07-01 08:59:22 +02:00
Petr Špaček a691ebd0c9 Add helper to unify options and zone block grammars
A helper is needed to combine cfg_test output for generic options and
all the type-dependent zone block variants.
2022-07-01 08:59:22 +02:00
Petr Špaček 190004e46c Add pretty printer for JSON grammar
It produces the same format as cfg_test --grammar. The advantage is that
it allows to print any node in configuration the tree, not just whole
blocks.
2022-07-01 08:59:22 +02:00
Petr Špaček 8960d51aa3 Add utility to search for context-dependent configuration statements
The utility detects statements which use the same name (e.g.
max-zone-ttl) but use different grammar in different contexts. These
typically need special case in docs.
2022-07-01 08:59:22 +02:00
Petr Špaček df08982930 Add a new library to parse grammar format produced by cfg_test
It transforms named.conf/rndc.conf grammar from text format into Python
dictionary. This allows granular access to grammar elements.

Beware: It heavity depens on cfg_test output format!
2022-07-01 08:59:04 +02:00
Petr Špaček fb474de3ab Add rndc.conf grammar into doc/misc
It uses the same mechanism as all other grammars, but the file is named
differently to distinguish it from named.conf grammars.
2022-07-01 08:56:35 +02:00
Petr Špaček 699570cdec Un-format grammar files in doc/misc
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.
2022-07-01 08:56:33 +02:00
Petr Špaček af3683f436 Add missing comment markers to doc/misc/ grammar files
These files can be consumed by scripts, so obviously missing comment
markers wreak havoc.
2022-06-30 19:00:17 +02:00
Petr Špaček 563eb8e1b9 Accept rst syntax in .. statement:: short: text
Nested rst syntax is now parsed and rendered. E.g.:

.. namedconf:statement:: example
   :short: Use ``this`` **cool** syntax!
2022-06-30 18:04:44 +02:00
Petr Špaček 0e7ca5b5e0 Disambiguate address_match_list link anchor
Let's keep just the :term: produced by grammar glossary.
2022-06-30 18:04:41 +02:00
Suzanne GoldlustandPetr Špaček 3cf976bd78 Add the :tags: and :short: descriptions for the category "transfer" 2022-06-30 18:04:40 +02:00
Suzanne GoldlustandPetr Špaček 7187a5cf77 Add the :tags: and :short: descriptions for the category "query" 2022-06-30 18:04:40 +02:00
Petr Špaček 2630cf8e76 Resurrect DNS NOTIFY chapter in the ARM
It was accidentally removed in the heat of
25eb91d23c.
2022-06-30 18:04:40 +02:00
Michał Kępień f0d2d3c03f Add CHANGES entry and release note for GL #2147 2022-06-30 15:24:08 +02:00
Michał Kępień 887c666caf Obsolete the "glue-cache" option
The "glue-cache" option was marked as deprecated by commit
5ae33351f2 (first released in BIND 9.17.6,
back in October 2020), so now obsolete that option, removing all code
and documentation related to it.

Note: this causes the glue cache feature to be permanently enabled, not
disabled.
2022-06-30 15:24:08 +02:00
Petr Špaček 4ce1f25210 Declare Debian 9 (Stretch) community-maintained 2022-06-28 17:54:48 +02:00
Matthijs Mekking fb517eb52a Add some clarifications wrt dynamic zones
These were suggested by GitLab user @elmaimbo.
2022-06-27 11:01:33 +02:00
Ron AitchisonandPetr Špaček d44cb9f194 Added explanations or Argument, Value, and Directive to the ARM 2022-06-24 16:20:46 +02:00
Petr Špaček bb2a19d655 Add link to glob definition for include directive 2022-06-24 09:40:51 +02:00
Suzanne GoldlustandPetr Špaček f4503061ba Minor text nitpicking around dnssec-policy grammar reference 2022-06-24 09:40:51 +02:00
Petr Špaček fbcaa44851 Remove ambiguous link anchors for logging { file } statement
Unfortunatelly logging and zone blocks use file statements with
different semantics but the same name.

There is no sane way to disambiguate them in text, so let's remove the
link anchor from logging so we can link to the file statement in zone.

My assumption is that linking to logging { file } is very unlikely
because logging is self-contained in one block but zone config is all
over the place.
2022-06-24 09:40:51 +02:00
Petr Špaček d6b2423c99 Remove ambiguous link anchors for keys statement
Unfortunatelly dnssec-policy and servers blocks use keys statements with
a totally different grammar and semantics but the same name.
There is no sane way to disambiguate them in text, so let's remove the
link anchors to prevent errorneous linking.
2022-06-24 09:40:51 +02:00
Petr Špaček caf2675ef8 Change statement->argument terminology for control channel
control { inet ... allow keys read-only }; are not actual statements
but in fact arguments of a statement. Remove .. namedconf:statement::
syntax to avoid collisions with other statements of the same name.
2022-06-24 09:40:51 +02:00
Petr Špaček 3233414a53 Deduplicate dnssec-policy definition in the ARM 2022-06-24 09:40:51 +02:00
Petr Špaček fa2ba5423b Deduplicate null definition in the ARM logging section 2022-06-24 09:40:51 +02:00
Petr Špaček cd1b9aa052 Deduplicate {use,avoid}-v{4,6}-udp-ports definitions in the ARM
Statements affected:
use-v4-udp-ports
use-v6-udp-ports
avoid-v4-udp-ports
avoid-v6-udp-ports
2022-06-24 09:40:00 +02:00
Petr Špaček 6e634c43cd Deduplicate request-expire definition in the ARM 2022-06-24 08:14:32 +02:00
Petr Špaček 22e6c8a29e Deduplicate provide-ixfr definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 14389bc446 Deduplicate request-ixfr definition in the ARM
Let's be consistent and put all definitions in the options block.
2022-06-24 08:14:31 +02:00
Petr Špaček 08a3cd7ae4 Deduplicate notify-source, notify-source-v6 definitions in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček e91529a48b Deduplicate request-nsid definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 92a125b9c4 Deduplicate query-source, query-source-v6 definitions in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 538f5a7520 Deduplicate transfer-source, transfer-source-v6 definitions in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček b6eb0b298d Deduplicate transfer-format definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 7937c4bc9c Deduplicate send-cookie definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 8ac82b4f30 Deduplicate max-udp-size definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 624bbf403c Deduplicate edns-udp-size definition in the ARM 2022-06-24 08:14:31 +02:00
Petr Špaček 405a0931ea Deduplicate max-zone-ttl definition in the ARM
This is confusing as hell, but we cannot fix that in the manual itself.
At least now the user is made aware of two distinct defaults.
2022-06-24 08:14:31 +02:00
Petr Špaček 420a7331a8 Deduplicate allow-update definition in the ARM 2022-06-24 08:14:29 +02:00
Ron AitchisonandPetr Špaček cf85e776c6 Reference new named.conf description instead of man page 2022-06-24 08:12:52 +02:00
Ron AitchisonandPetr Špaček 31e3d1aaf7 Remove line numbering from config file examples 2022-06-24 08:12:52 +02:00
Ron AitchisonandPetr Špaček c40a983334 Changed all references from clause to block 2022-06-24 08:12:52 +02:00
Ron AitchisonandPetr Špaček b01262b7f2 Restructure introduction to named.conf in the ARM 2022-06-24 08:12:52 +02:00
Petr Špaček e5b7022dcb Add link anchors to statements and blocks in the ARM
All statements now use .. namedconf:statement:: or
.. rndcconf:statement:: syntax provided by our Sphinx extension.

This has several consequences:
- It changes how statement headings are rendered
- Statements are indexed and show up as separate items in doc
  search results (in the HTML version)
- Statements can be linked to using either :any:`statement` or
  :namedconf:ref:`statement` syntax (not used in this commit)
- Statements can be categorized and printed using ..
  namedconf:statatementlist:: syntax (not used in this commit)
2022-06-24 08:12:50 +02:00
Michał Kępień 366f7a938b Add a note to the ARM on dnstap & resolver traffic
Warn users that server-side IP addresses are not stored in dnstap
captures of resolver traffic unless "query-source(-v6)" is explicitly
set, explaining why it is so.
2022-06-22 15:09:43 +02:00