diff --git a/README.md b/README.md index 6a3f07f..fa5a5f4 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ protocol more accessible, while maintaining full alignment with all relevant and useful RFCs. This effort is developed cooperatively on GitHub, the repository can be -found [https://github.com/ahupowerdns/hello-dns/](here) and help is highly +found [https://github.com/Habbie/hello-dns/](here) and help is highly welcome! Feedback can also be sent to bert.hubert@powerdns.com or [@PowerDNS_Bert](https://twitter.com/PowerDNS_Bert). diff --git a/basic.md b/basic.md index a8cfb1e..06f087a 100644 --- a/basic.md +++ b/basic.md @@ -150,7 +150,7 @@ save a lot of pain when processing DNS names with spaces or dots in them. Finally, DNS queries are [case-insensitive](https://tools.ietf.org/html/rfc4343). This however is defined rather mechanically, and limited to ASCII. Operators do not need to know that in some -encodings a Ü is equivalent to ü when compared case insensitively. +encodings a Ü is equivalent to ü when compared case-insensitively. For DNS purposes, the fifth bit (0x20) is ignored when comparing octets within a-z and A-Z. @@ -274,7 +274,7 @@ This is then followed by the binary representation of the current IPv6 address of www.ietf.org, 2400:cb00:2048:1::6814:55. If there had been further answers, these would follow this first one, and -the ANCOUNT would have been higher than 1. If there had been data in the +the ANCOUNT would have been greater than 1. If there had been data in the 'authoritative' and 'additional' sections, that would follow here too, with the corresponding adjustments to 'NSCOUNT' and 'ARCOUNT' fields. More about these sections later. diff --git a/optional.md b/optional.md index 5373530..b8d189d 100644 --- a/optional.md +++ b/optional.md @@ -111,7 +111,7 @@ Prerequisites are constraints that must pass before any updates are processed. All of the constraints apply to entire RRSETs as opposed to individual RRs. Prerequisite failures are signalled by a response message's RCODE. -Prerequiste | Type | Class | Data | Failure RCODE +Prerequisite | Type | Class | Data | Failure RCODE -----------------------|--------------|---------------|------|-------------- RRSET exists | RRSET's Type | ANY (255) | No | NXRRSET (8) RRSET exists with data | RRSET's Type | RRSET's Class | Yes | NXRRSET (8) diff --git a/resolver.md b/resolver.md index 8a5084d..9a3214d 100644 --- a/resolver.md +++ b/resolver.md @@ -90,7 +90,7 @@ and terminate the algorithm. # Security At every point a resolver must be vigilant to not store data coming from an -authoritative server that can not be trusted to provide that data. +authoritative server that cannot be trusted to provide that data. In addition, if a cache is used, care must be taken that an authoritative server must not be allowed to 'extend its own authority' infinitely. This is diff --git a/tdns/Doxyfile b/tdns/Doxyfile index 2e0a132..1c4c105 100644 --- a/tdns/Doxyfile +++ b/tdns/Doxyfile @@ -204,7 +204,7 @@ QT_AUTOBRIEF = NO # tag to YES if you prefer the old behavior instead. # # Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. +# not recognized anymore. # The default value is: NO. MULTILINE_CPP_IS_BRIEF = NO @@ -278,7 +278,7 @@ OPTIMIZE_OUTPUT_VHDL = NO # parses. With this tag you can assign which parser to use for a given # extension. Doxygen has a built-in mapping, but you can override or extend it # using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# language is one of the parsers supported by doxygen: IDL, Java, JavaScript, # C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: # FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: # Fortran. In the later case the parser tries to guess whether the code is fixed @@ -520,7 +520,7 @@ INTERNAL_DOCS = NO # If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file # names in lower-case letters. If set to YES, upper-case letters are also # allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows +# in case and if your file system supports case-sensitive file names. Windows # and Mac users are advised to set this option to NO. # The default value is: system dependent. @@ -685,7 +685,7 @@ SHOW_NAMESPACES = YES # The FILE_VERSION_FILTER tag can be used to specify a program or script that # doxygen should invoke to get the current version for each file (typically from # the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the +# popen()) the command input-file, where command is the value of the # FILE_VERSION_FILTER tag, and input-file is the name of an input file provided # by doxygen. Whatever the program writes to standard output is used as the file # version. For an example see the documentation. @@ -1512,7 +1512,7 @@ EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 10 -# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# Use the FORMULA_TRANSPARENT tag to determine whether or not the images # generated for formulas are transparent PNGs. Transparent PNGs are not # supported properly for IE 6.0, but are supported on all modern browsers. # @@ -1524,7 +1524,7 @@ FORMULA_FONTSIZE = 10 FORMULA_TRANSPARENT = YES # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering +# http://www.mathjax.org) which uses client side JavaScript for the rendering # instead of using pre-rendered bitmaps. Use this if you do not have LaTeX # installed or if you want to formulas look prettier in the HTML output. When # enabled you may also need to install MathJax separately and configure the path @@ -1594,7 +1594,7 @@ MATHJAX_CODEFILE = SEARCHENGINE = YES # When the SERVER_BASED_SEARCH tag is enabled the search engine will be -# implemented using a web server instead of a web client using Javascript. There +# implemented using a web server instead of a web client using JavaScript. There # are two flavors of web server based searching depending on the EXTERNAL_SEARCH # setting. When disabled, doxygen will generate a PHP script for searching and # an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing diff --git a/tdns/README.md b/tdns/README.md index a8b9cb9..9ebb7a3 100644 --- a/tdns/README.md +++ b/tdns/README.md @@ -9,7 +9,7 @@ Welcome to tdns, a 'from scratch' teaching DNS library. Based on `tdns`, [`tauth`](tauth.md.html) and [`tres`](tres.md.html) implement all of [basic DNS](../basic.md.html) and large parts of DNSSEC in ~~2000~~ ~~3000~~ 3100 lines of code. Code is -[here](https://github.com/ahupowerdns/hello-dns/tree/master/tdns). To +[here](https://github.com/Habbie/hello-dns/tree/master/tdns). To compile, see the end of this document. Even though the 'hello-dns' documents describe how basic DNS works, and how @@ -40,13 +40,13 @@ Non-goals are: A more narrative explanation of what `tdns` is and what we hope it will achieve can be found [here](intro.md.html). -The code for `tdns` can be found on [GitHub](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/) and is also documented +The code for `tdns` can be found on [GitHub](https://github.com/Habbie/hello-dns/blob/master/tdns/) and is also documented using [Doxygen](codedocs/html). # Objects in `tdns` -These are found in [dns-storage.hh](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dns-storage.hh) +These are found in [dns-storage.hh](https://github.com/Habbie/hello-dns/blob/master/tdns/dns-storage.hh) and -[dns-storage.cc](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dns-storage.hh). +[dns-storage.cc](https://github.com/Habbie/hello-dns/blob/master/tdns/dns-storage.hh). ## DNSLabel The most basic object in `tdns` is DNSLabel. `www.powerdns.com` consists of @@ -206,8 +206,8 @@ has a `toString()` method for human friendly output. # Parsing and generating DNS Messages -This code is in [dnsmessages.cc](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dnsmessages.cc) -and [dnsmessages.hh](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dnsmessages.hh). +This code is in [dnsmessages.cc](https://github.com/Habbie/hello-dns/blob/master/tdns/dnsmessages.cc) +and [dnsmessages.hh](https://github.com/Habbie/hello-dns/blob/master/tdns/dnsmessages.hh). ## `RRGen`s: dealing with all the record types DNS knows many record types, so we need a unified interface that can pass @@ -270,7 +270,7 @@ returns record details and a smart pointer to an `RRGen` instance (as described above). A good example of how `DNSMessageReader` works can be found in -[`tdig.cc`](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dns-storage.hh). +[`tdig.cc`](https://github.com/Habbie/hello-dns/blob/master/tdns/dns-storage.hh). ## DNSMessageWriter This class creates DNS messages, and in its constructor it needs to know the @@ -293,9 +293,9 @@ Writing actual records to DNSMessageWriter proceeds via `putRR()` which serializes `RRGen` instances to the message. Samples of how to do this can be found in -[tres.cc](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dns-storage.hh) +[tres.cc](https://github.com/Habbie/hello-dns/blob/master/tdns/dns-storage.hh) and -[tauth.cc](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/dns-storage.hh). +[tauth.cc](https://github.com/Habbie/hello-dns/blob/master/tdns/dns-storage.hh). ### Compression DNS compression is unreasonably difficult to get right. In what happens to @@ -322,7 +322,7 @@ this in `serialize()`. # Internals `tdns` uses several small pieces of code not core to dns: - * [nenum](https://github.com/ahupowerdns/hello-dns/blob/master/tdns/nenum.hh) + * [nenum](https://github.com/Habbie/hello-dns/blob/master/tdns/nenum.hh) this is a simple 'named ENUM' construct that enables the printing of DNSName::A * [Simplesocket](https://github.com/ahupowerdns/simplesocket) a small set @@ -334,7 +334,7 @@ This requires a recent compiler version that supports C++ 2014. If you encounter problems, please let me know (see above for address details). ``` -$ git clone https://github.com/ahupowerdns/hello-dns.git +$ git clone https://github.com/Habbie/hello-dns.git $ cd hello-dns/tdns $ git submodule init $ git submodule update @@ -344,7 +344,7 @@ $ dig -t any time.powerdns.org @::1 -p 5300 +short time.powerdns.org. 3600 IN TXT "The time is Fri, 13 Apr 2018 12:55:54 +0200" ``` -For more detauls, read on about [`tauth`](tauth.md.html), [`tres`](tres.md.html) +For more details, read on about [`tauth`](tauth.md.html), [`tres`](tres.md.html) or the [C API](c-api.md.html).