Commit Graph
203 Commits
Author SHA1 Message Date
Petr Špaček c3fed5ce40 Manually hyperlink algorithm, key, options, secret, and server
These statements/block are ambiguos because they occur in named.conf and
rndc.conf as well. All occurences now link link to the matching
definition.
2022-07-04 15:50:52 +02:00
Suzanne GoldlustandPetr Špaček 6db988e7e3 Grammar fixes and assorted text edits in the ARM 2022-07-04 15:50:51 +02:00
Petr Špaček dd4dc78899 Add tables with statements by tag 2022-07-04 15:50:51 +02:00
Petr Špaček f91cbcf996 Define topmost configuration blocks 2022-07-04 15:50:51 +02:00
Petr Špaček 8aea6694bf Alphabetize grammar glossary 2022-07-04 15:50:51 +02:00
Petr Špaček 0138e5c1d5 Rename yes_or_no to boolean
The name yes_or_no was used only in two places and rest of the ARM
(except for the grammar glossary...) uses term boolean. Let's stick to
it.
2022-07-04 15:50:51 +02:00
Petr Špaček decb4643d1 Deduplicate definitions of address_match_list and address_match_element
It would be better if it fit into the grammar glossary, but it is too
long. A link must do.
2022-07-04 15:50:51 +02:00
Petr Špaček 4915b1f3a1 Rework size_spec and size_or_percentage definitions
Except for a single case they were not referenced in the text, but at
the same time doc/misc grammar uses terms "size", "sizeval", and
"percetage".

Keywords "default" and "unlimited" are expanded in statement's grammar
anyway, but I kept their description in place because they are generally
allowed at places which accept sizes.

Percentage is also expanded in doc/misc grammars and thus requires
separate definition.
2022-07-04 15:50:51 +02:00
Petr Špaček 1233c86ff7 Remove incorrect hyperlinks to file and unix definitions
Terms file and unix have overloaded meaning and were incorrectly linked
during the mass-linking campain.
2022-07-04 15:50:51 +02:00
Petr Špaček 8d9c2368a9 Rename port_list to portrange
The old name was not referenced anywhere but the new name is used in
grammar of {avoid,use}-v{4,6}-udp-ports statement.
2022-07-04 15:50:51 +02:00
Petr Špaček 443fb5f34b Remove path_name grammar definition
It was literally not used anywhere.
2022-07-04 15:50:51 +02:00
Petr Špaček 55bc6d02a0 Hyperlink integer to its definition 2022-07-04 15:50:51 +02:00
Petr Špaček 9885bf658d Rename number to integer
The term number was used only in other definitions, and at the same time
doc/misc grammar uses term integer.
2022-07-04 15:50:51 +02:00
Petr Špaček 6f754dae20 Clarify and hyperlink tls_id definition 2022-07-04 15:50:51 +02:00
Petr Špaček 116573a4a7 Hyperlink server_id to its definition 2022-07-04 15:50:51 +02:00
Petr Špaček c972fad7b0 Rename key_id to server_key
The old name was used in the ARM and rndc manual page but was
inconsistent with doc/misc grammar.
2022-07-04 15:50:51 +02:00
Petr Špaček 818219b36a Remove key_list grammar definition
It was used in a single place (inet statement) and it defined it in the
text anyway. Let's not clutter the glossary.
2022-07-04 15:50:50 +02:00
Petr Špaček 686a15d30f Hyperlink port references to appropriate definitions
``port`` used to refer to grammar elements and also to named.conf
option. Both cases are now linked to respective definitions.
2022-07-04 15:50:50 +02:00
Petr Špaček 7b51a027e7 Rename ip_port to port
The old name was used only in couple places, and was inconsistent with
doc/misc grammar.
2022-07-04 15:50:50 +02:00
Petr Špaček d1644f420c Rename ip_dscp to dscp
The old name was literally not used anywhere, not even in the source
code. The new name is used by doc/misc grammar.
2022-07-04 15:50:50 +02:00
Petr Špaček 5ce45d1c04 Hyperlink netprefix grammar references to the definition 2022-07-04 15:50:50 +02:00
Petr Špaček a35c1ae0c2 Hyperlink ip??_address grammar references to their definition 2022-07-04 15:50:50 +02:00
Petr Špaček b22bdb3a1b Rename ip_prefix to netprefix
Let's standardize on netprefix which matches grammar used in doc/misc.
2022-07-04 15:50:50 +02:00
Petr Špaček 57f218e65e Rename ip_addr, ipv4_addr, and ipv6_addr to *_address
The longer variant matches grammar used in doc/misc.
2022-07-04 15:50:50 +02:00
Petr Špaček 44c24f3c94 Remove dotted_decimal from grammar glossary
This definition was dererenced only once, from ip4_addr definition on
the next line. These two are now collapsed into new ip4_addr definition.
2022-07-04 15:50:50 +02:00
Petr Špaček fe427a8460 Remove namelist from grammar glossary
This definition was used only for deny-answer-aliases statement
description, and moreover the term did not match grammar listed in
doc/misc/options.

I've replaced it with textual expansion of "list of `domain_name`s"
which is used more often.
2022-07-04 15:50:50 +02:00
Petr Špaček e59cedea1f Rename remoteserver_list to remote-servers
Name remoteserver_list was not referenced anywhere but the grammar uses
name remote-servers. Rename and add a reference to primaries for more
information.
2022-07-04 15:50:50 +02:00
Petr Špaček 309dbeac7b Hyperlink domain_name grammar elements
Hyperlinked manually to avoid needless repetition in the Rset ordering
chapter.
2022-07-04 15:50:50 +02:00
Petr Špaček 69d0632dc0 Hyperlink ACL grammar elements
Manual edit required to restore the first occurence of "definition"
inside .. glossary directive.

Generated using:
    N=acl_name; sed -i -e "s/\`\`$N\`\`/:term:\`$N\`/g" $ARMFILES
    N=address_match_list; sed -i -e "s/\`\`$N\`\`/:term:\`$N\`/g" $ARMFILES
2022-07-04 15:50:50 +02:00
Petr Špaček 14c7fb36e7 Remove unreferences dialup_option grammar
I dunno why it was a separate entity in the grammar glossary. It is not
referenced anywhere else except for the the dialup statement, and the
statement describes all its possible values verbosely.
2022-07-04 15:50:50 +02:00
Petr Špaček 9bbcff225b Manual fixups for new hyperlinks
It turns out that many manual edits were required:
- Heading underlines were too short because :any:`` is longer than ````
- Some statement names clashed with manually defined _link_anchors
  (notify, trust-anchors etc.)
- Zone types are defined like "type primary" in the internal grammar and
  that caused mayhem in the replacement script as it took "type" and
  individual types ("primary", "secondary") as separate statements.
  For that reason :any:`primary` had to be manually replaced with
  :any:`primary <type primary>` where appropriate.
- Sometimes option name is also the same as a value name (e.g. "notify")
  and then it did not make sense to do the replacement.
2022-07-04 15:50:50 +02:00
Petr Špaček d101490250 Add hyperlinks to all unique statement names
This shell script added hyperlinks to all unique statement names:

    UNIQSTATEMENTS=$(\
        sort \
            <(git grep '.. namedconf:statement::' '*.rst' | sed -e 's/^.*:: //') \
            <(git grep '.. rndcconf:statement::' '*.rst' | sed -e 's/^.*:: //') \
        | uniq --unique)
    ARMFILES=$(git ls-files 'doc/*.rst' | grep -v 'doc/man')
    for STATEMENT in $UNIQSTATEMENTS; \
        do sed -i -e "s/\`\`$STATEMENT\`\`/:any:\`$STATEMENT\`/g" $ARMFILES; \
    done

This needs manual cleanup (see next commit) to fix syntax errors.
2022-07-04 15:50:50 +02:00
Petr Špaček 9804cdc4de Use the new term Block in ARM headings "Statement Definition and Usage"
The underline is not shortened on purpose, see subsequent commits.

Generated by:
    sed -i -e 's/ Statement Definition and Usage$/ Block Definition and Usage/g' doc/arm/reference.rst
2022-07-04 15:50:49 +02:00
Petr Špaček 452593fc94 Use the new term Block in ARM headings "Statement Grammar"
Long live new terminology.
The underline is now shortened on purpose, see subsequent commits.

Generated by:
    sed -i -e 's/ Statement Grammar$/ Block Grammar/g' doc/arm/reference.rst
2022-07-04 15:50:46 +02:00
Petr Špaček d88fefbb4a Add link anchor and hyperlinks to keys statement
This is super confusing because statement "keys" exists in context
controls and server blocks where it refers to symmetric TSIG key, and it
_also_ exists in dnssec-policy block where it specifies public-private
key pair parameters.

In an (unsuccessful) attempt to disambiguate these two I added bunch of
hyperlinks and a warning.
2022-07-01 08:59:24 +02:00
Petr Špaček 82e2f0b37e Describe rndc server block using .. rndcconf syntax
We need to split the description to silence warnings about undescribed
statements.
2022-07-01 08:59:24 +02:00
Petr Špaček 1687b40849 Document ipv4only-* options in the ARM
Statements ipv4only-contact, ipv4only-enable, ipv4only-server did not
have their own section in the ARM. Now they have.
2022-07-01 08:59:23 +02:00
Petr Špaček 1f5bc4fe3b Add option to suppress grammar rendering
A new flag
.. namedconf:statement::
   :suppress_grammar:
suppresses pretty-printing grammar.

It is useful mostly for zones because each zone has it's own grammar, so
printing all of them at once usually does not make sense.
2022-07-01 08:59:23 +02:00
Petr Špaček 0bbbdc6244 Remove auto-generated rst files in repo in favour of grammar pretty printer 2022-07-01 08:59:23 +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
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
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