[tor-commits] [torspec/master] Make new subsection for routers uploading descriptors.

nickm at torproject.org nickm at torproject.org
Fri Jan 17 15:45:15 UTC 2014


commit 8a1fab7ef143d7886cfd2cd83b53249e742e6d7d
Author: Karsten Loesing <karsten.loesing at gmx.net>
Date:   Mon Jan 13 16:54:10 2014 +0100

    Make new subsection for routers uploading descriptors.
    
    The rule we're trying to follow here is that sections are for roles
    (client, authority, cache, client) and subsections are for operations
    performed by the role.  Routers really only perform a single
    operation: they periodically upload their descriptors to the
    authorities.  That's why there should be a single subsection for this
    operation.
    
    This effectively substitutes section number parts "2." with "2.1.":
     * 2 -> 2.1
     * 2.1 -> 2.1.1
     * 2.2 -> 2.1.2
     * 2.2.1 -> 2.1.2.1
     * 2.3 -> 2.1.3
---
 dir-spec.txt |   34 ++++++++++++++++++----------------
 1 file changed, 18 insertions(+), 16 deletions(-)

diff --git a/dir-spec.txt b/dir-spec.txt
index f141065..184bc2e 100644
--- a/dir-spec.txt
+++ b/dir-spec.txt
@@ -328,6 +328,8 @@
 
 2. Router operation and formats
 
+2.1. Uploading router descriptors and extra-info documents
+
    ORs SHOULD generate a new router descriptor and a new extra-info
    document whenever any of the following events have occurred:
 
@@ -358,7 +360,7 @@
    documents may not exceed 50,000 bytes in length. If they do, the
    authorities SHOULD reject them.
 
-2.1. Router descriptor format
+2.1.1. Router descriptor format
 
    Router descriptors consist of the following items.  For backward
    compatibility, there should be an extra NL at the end of each router
@@ -366,15 +368,15 @@
 
    In lines that take multiple arguments, extra arguments SHOULD be
    accepted and ignored.  Many of the nonterminals below are defined in
-   section 2.3.
+   section 2.1.3.
 
      "router" nickname address ORPort SOCKSPort DirPort NL
 
        [At start, exactly once.]
 
        Indicates the beginning of a router descriptor.  "nickname" must be a
-       valid router nickname as specified in section 2.3.  "address" must be
-       an IPv4
+       valid router nickname as specified in section 2.1.3.  "address" must
+       be an IPv4
        address in dotted-quad format.  The last three numbers indicate the
        TCP ports at which this OR exposes functionality. ORPort is a port at
        which this OR accepts TLS connections for the main OR protocol;
@@ -530,7 +532,7 @@
         [We didn't start parsing these lines until Tor 0.1.0.6-rc; they should
          be marked with "opt" until earlier versions of Tor are obsolete.]
 
-        [See also migration notes in section 2.2.1.]
+        [See also migration notes in section 2.1.2.1.]
 
     "eventdns" bool NL
 
@@ -613,7 +615,7 @@
        Tor MAY accept a limited number of addresses or ports. As of Tor 0.2.3.x
        only the first address and the first port are used.
 
-2.2. Extra-info documents
+2.1.2. Extra-info document format
 
    Extra-info documents consist of the following items:
 
@@ -637,8 +639,8 @@
     "write-history" YYYY-MM-DD HH:MM:SS (NSEC s) NUM,NUM,NUM,NUM,NUM... NL
         [At most once.]
 
-        As documented in section 2.1 above.  See migration notes in
-        section 2.2.1.
+        As documented in section 2.1.1 above.  See migration notes in
+        section 2.1.2.1.
 
     "geoip-db-digest" Digest NL
         [At most once.]
@@ -968,7 +970,7 @@
         initial item "extra-info" and the final item "router-signature",
         signed with the router's identity key.
 
-2.2.1. Moving history fields to extra-info documents.
+2.1.2.1. Moving history fields to extra-info documents
 
    Tools that want to use the read-history and write-history values SHOULD
    download extra-info documents as well as router descriptors.  Such
@@ -981,7 +983,7 @@
    produced by older versions of Tor until all Tor versions earlier
    than 0.2.0.x are obsolete.
 
-2.3. Nonterminals in router descriptors
+2.1.3. Nonterminals in router descriptors
 
    nickname ::= between 1 and 19 alphanumeric characters ([A-Za-z0-9]),
       case-insensitive.
@@ -1132,13 +1134,13 @@
 
         [Exactly once, at start]
 
-        The "onion-key" element as specified in section 2.1.
+        The "onion-key" element as specified in section 2.1.1.
 
     "ntor-onion-key" base-64-encoded-key
 
         [At most once]
 
-        The "ntor-onion-key" element as specified in section 2.1.
+        The "ntor-onion-key" element as specified in section 2.1.1.
 
         (Only included when generating microdescriptors for
         consensus-method 16 or later.)
@@ -1147,13 +1149,13 @@
 
         [Any number]
 
-        The "or-address" element as specified in section 2.1.
+        The "or-address" element as specified in section 2.1.1.
 
      "family" names NL
 
         [At most once]
 
-        The "family" element as specified in section 2.1.
+        The "family" element as specified in section 2.1.1.
 
      "p" SP ("accept" / "reject") SP PortList NL
 
@@ -1516,7 +1518,7 @@
         Present only if the OR has at least one IPv6 address.
 
         Address and portlist are as for "or-address" as specified in
-        section 2.1.
+        section 2.1.1.
 
         (Only included when the vote or consensus is generated with
         consensus-method 14 or later.)
@@ -2373,7 +2375,7 @@
         (Currently, 12 hours.)
 
    Differences between router descriptors are "non-cosmetic" if they would be
-   sufficient to force an upload as described in section 2 above.
+   sufficient to force an upload as described in section 2.1 above.
 
    Note that the "cosmetic difference" test only applies to uploaded
    descriptors, not to descriptors that the authority downloads from other





More information about the tor-commits mailing list