From 27cc632d8f4d88215f3c57eacaee4d515b14cbc5 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Tue, 15 Aug 2023 10:19:16 -0400 Subject: Close prop-301, describing the new consensus method 34 in dir-spec See tor!743 for the implementation. --- dir-spec.txt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'dir-spec.txt') diff --git a/dir-spec.txt b/dir-spec.txt index d6b58cd..f133c39 100644 --- a/dir-spec.txt +++ b/dir-spec.txt @@ -2012,7 +2012,8 @@ Table of Contents more than once. If a vote contains the same "PACKAGENAME VERSION" more than once, all but the last is ignored. - Included in consensuses only for method 19 and later. + Included in consensuses only for methods 19-33. Earlier methods + did not include this; method 34 removed it. "known-flags" SP FlagList NL @@ -2824,7 +2825,7 @@ Table of Contents by more than half of the voting authorities that included a client-versions or server-versions lines in their votes. - With consensus method 19 or later, a package line is generated for a + With consensus methods 19 through 33, a package line is generated for a given PACKAGENAME/VERSION pair if at least three authorities list such a package in their votes. (Call these lines the "input" lines for PACKAGENAME.) The consensus will contain every "package" line that is @@ -3009,6 +3010,9 @@ Table of Contents flavor is "microdesc", then the "Publication" field in the "r" line is set to "2038-01-01 00:00:00". + * If consensus method 34 or later is used, the consensus + does not include any "package" lines. + The signatures at the end of a consensus document are sorted in ascending order by identity digest. @@ -3097,6 +3101,10 @@ Table of Contents "30" -- Removes padding from ntor-onion-key. "31" -- Uses correct parsing for bwweightscale and maxunmeasuredbw when computing weights + "32" -- Adds special handling for MiddleOnly flag. + "33" -- Sets "publication" field in microdesc consensus "r" lines + to a meaningless value. + "34" -- Removes "package" lines from consensus. Before generating a consensus, an authority must decide which consensus method to use. To do this, it looks for the highest version number -- cgit v1.2.3-54-g00ecf