From 73d3702a490cb1f4d0289928454bf7db6e7e9501 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 8 Dec 2021 09:41:21 -0500 Subject: Fold prop 335-middle-only-redux.md into the specs. Also, mark it closed. --- dir-spec.txt | 19 +++++++++++++++++++ proposals/000-index.txt | 4 ++-- proposals/335-middle-only-redux.md | 2 +- proposals/BY_INDEX.md | 2 +- proposals/README.md | 2 +- 5 files changed, 24 insertions(+), 5 deletions(-) diff --git a/dir-spec.txt b/dir-spec.txt index 543e341..45b8466 100644 --- a/dir-spec.txt +++ b/dir-spec.txt @@ -2329,6 +2329,11 @@ Table of Contents "Fast" if the router is suitable for high-bandwidth circuits. "Guard" if the router is suitable for use as an entry guard. "HSDir" if the router is considered a v2 hidden service directory. + "MiddleOnly" if the router is considered unsuitable for + usage other than as a middle relay. Clients do not need + to handle this option, since when it is present, the authorities + will automatically vote against flags that would make the router + usable in other positions. (Since 0.4.7.2-alpha.) "NoEdConsensus" if any Ed25519 key in the router's descriptor or microdescriptor does not reflect authority consensus. "Stable" if the router is suitable for long-lived circuits. @@ -2638,6 +2643,13 @@ Table of Contents authority believes that it's been up for at least 96 hours (or the current value of MinUptimeHidServDirectoryV2). + "MiddleOnly" -- An authority should vote for this flag if it believes + that a relay is unsuitable for use except as a middle relay. When + voting for this flag, the authority should also vote against "Exit", + "Guard", "HsDir", and "V2Dir". When voting for this flag, if the + authority votes on the "BadExit" flag, the authority should vote in + favor of "BadExit". (This flag was added in 0.4.7.2-alpha.) + "NoEdConsensus" -- authorities should not vote on this flag; it is produced as part of the consensus for consensus method 22 or later. @@ -2957,6 +2969,13 @@ Table of Contents "bwweightscale" and "maxunmeasuredbw" parameters correctly when computing votes. + * If consensus method 32 or later is used, authorities handle the + "MiddleOnly" flag specially when computing a consensus. When the + voters agree to include "MiddleOnly" in a routerstatus, they + automatically remove "Exit", "Guard", "V2Dir", and "HSDir". If + the BadExit flag is included in the consensus, they automatically + add it to the routerstatus. + The signatures at the end of a consensus document are sorted in ascending order by identity digest. diff --git a/proposals/000-index.txt b/proposals/000-index.txt index abd833a..40152dd 100644 --- a/proposals/000-index.txt +++ b/proposals/000-index.txt @@ -255,7 +255,7 @@ Proposals by number: 332 Ntor protocol with extra data, version 3 [ACCEPTED] 333 Vanguards lite [FINISHED] 334 A Directory Authority Flag To Mark Relays As Middle-only [SUPERSEDED] -335 An authority-only design for MiddleOnly [FINISHED] +335 An authority-only design for MiddleOnly [CLOSED] 336 Randomized schedule for guard retries [OPEN] 337 A simpler way to decide, "Is this guard usable?" [OPEN] @@ -321,7 +321,6 @@ Proposals by status: FINISHED: 260 Rendezvous Single Onion Services [in 0.2.9.3-alpha] 333 Vanguards lite [in 0.4.7.1-alpha] - 335 An authority-only design for MiddleOnly [in 0.4.7.2-alpha] CLOSED: 101 Voting on the Tor Directory System [in 0.2.0.x] 102 Dropping "opt" from the directory format [in 0.2.0.x] @@ -422,6 +421,7 @@ Proposals by status: 315 Updating the list of fields required in directory documents [in 0.4.5.1-alpha] 318 Limit protover values to 0-63 [in 0.4.5.1-alpha] 328 Make Relays Report When They Are Overloaded + 335 An authority-only design for MiddleOnly [in 0.4.7.2-alpha] SUPERSEDED: 112 Bring Back Pathlen Coin Weight 113 Simplifying directory authority administration diff --git a/proposals/335-middle-only-redux.md b/proposals/335-middle-only-redux.md index c87f37d..b308e76 100644 --- a/proposals/335-middle-only-redux.md +++ b/proposals/335-middle-only-redux.md @@ -3,7 +3,7 @@ Filename: 335-middle-only-redux.md Title: An authority-only design for MiddleOnly Author: Nick Mathewson Created: 2021-10-08 -Status: Finished +Status: Closed Implemented-In: 0.4.7.2-alpha ``` diff --git a/proposals/BY_INDEX.md b/proposals/BY_INDEX.md index da77281..e6bf782 100644 --- a/proposals/BY_INDEX.md +++ b/proposals/BY_INDEX.md @@ -252,7 +252,7 @@ Below are a list of proposals sorted by their proposal number. See * [`332-ntor-v3-with-extra-data.md`](/proposals/332-ntor-v3-with-extra-data.md): Ntor protocol with extra data, version 3 [ACCEPTED] * [`333-vanguards-lite.md`](/proposals/333-vanguards-lite.md): Vanguards lite [FINISHED] * [`334-middle-only-flag.txt`](/proposals/334-middle-only-flag.txt): A Directory Authority Flag To Mark Relays As Middle-only [SUPERSEDED] -* [`335-middle-only-redux.md`](/proposals/335-middle-only-redux.md): An authority-only design for MiddleOnly [FINISHED] +* [`335-middle-only-redux.md`](/proposals/335-middle-only-redux.md): An authority-only design for MiddleOnly [CLOSED] * [`336-randomize-guard-retries.md`](/proposals/336-randomize-guard-retries.md): Randomized schedule for guard retries [OPEN] * [`337-simpler-guard-usability.md`](/proposals/337-simpler-guard-usability.md): A simpler way to decide, "Is this guard usable?" [OPEN] diff --git a/proposals/README.md b/proposals/README.md index e4011b3..512ea26 100644 --- a/proposals/README.md +++ b/proposals/README.md @@ -68,7 +68,6 @@ themselves still need to be merged into the specifications proper. * [`260-rend-single-onion.txt`](/proposals/260-rend-single-onion.txt): Rendezvous Single Onion Services * [`333-vanguards-lite.md`](/proposals/333-vanguards-lite.md): Vanguards lite -* [`335-middle-only-redux.md`](/proposals/335-middle-only-redux.md): An authority-only design for MiddleOnly ## META proposals: about the proposal process @@ -240,6 +239,7 @@ necessary. * [`315-update-dir-required-fields.txt`](/proposals/315-update-dir-required-fields.txt): Updating the list of fields required in directory documents * [`318-limit-protovers.md`](/proposals/318-limit-protovers.md): Limit protover values to 0-63 * [`328-relay-overload-report.md`](/proposals/328-relay-overload-report.md): Make Relays Report When They Are Overloaded +* [`335-middle-only-redux.md`](/proposals/335-middle-only-redux.md): An authority-only design for MiddleOnly ## RESERVE proposals: saving for later -- cgit v1.2.3-54-g00ecf