[tor-dev] Help Wanted: Fallback Directory Update

teor teor2345 at gmail.com
Wed Dec 13 01:58:11 UTC 2017

Hi All,

Dominique, pastly, and Hello71 have offered to help out with this.
(I don't have Hello71's email, I'll ping them on IRC.)

Let's start by fixing up some of the code, and asking relay operators
if they want to be on the list.

> On 11 Dec 2017, at 14:51, teor <teor2345 at gmail.com> wrote:
> ...
> Fallback directory mirrors help clients reach the Tor network.
> We need to rebuild the list every so often when their details change.
> (We have an automated check for 25% failure, and it just triggered.)
> ...

pastly, I drafted an email for step 0, can you check it makes sense?
(I used to send out way too much info. I'm trying to be brief.)


> 0. Ask operators to opt-in stable relays as fallback directory mirrors
>  If they are on the whitelist already, they don't need to do anything.
>  Ticket: https://trac.torproject.org/projects/tor/ticket/22527
>  File:   https://gitweb.torproject.org/tor.git/tree/scripts/maint/fallback.whitelist

Anyone can do step 1, it's a copy-and-paste job with git and a config file:

> 1. Update the fallback whitelist with new and changed relay details
>  Tickets: https://trac.torproject.org/projects/tor/ticket/22321
>           https://trac.torproject.org/projects/tor/ticket/22527
>  File:    tor/scripts/maint/fallback.whitelist

Dominique, do you want to do Step 2?
It's a one-line patch that would be a good intro to Tor's bug tracker and git.
Please base it on the "master" branch.

> 2. Update updateFallbackDirs.py to have a CONSENSUS_EXPIRY_TOLERANCE of 0.
>  Ticket: https://trac.torproject.org/projects/tor/ticket/20942
>  File:   tor/scripts/maint/updateFallbackDirs.py

There are two more optional tasks if someone likes python:

Mark the fallbacks that have extra-info descriptors, so stem can use them

Add fallback nicknames to the file, so stem can use them

> 3. Run updateFallbackDirs.py with the new whitelist and CONSENSUS_EXPIRY_TOLERANCE.
>  You'll need a decent network connection for this.
>  Please attach the script logs to the trac ticket.
>  Command: tor/scripts/maint/updateFallbackDirs.py > src/or/fallback_dirs.inc

And there's another step here I forgot:

3a. Look at the warnings from the script to see which addresses have changed.
    Contact operators to see if the new addresses are permanent.
    Then repeat steps 1 and 3 with the new details.
    Ticket: https://trac.torproject.org/projects/tor/ticket/22321

> 4. Write a changes file
>  Ticket: https://trac.torproject.org/projects/tor/ticket/22271
>  Draft:
> o Minor features (fallback directory list):
>   - Replace the 151 fallbacks originally introduced in Tor in
>     May 2017 (of which ~111 were still functional) with a list of
>     NNN fallbacks (NNN new, NNN unchanged, NNN removed) generated in December
>     2017. Resolves ticket 22271.
>  There are some commands that count fallback changes here:
>  https://trac.torproject.org/projects/tor/wiki/doc/UpdatingFallbackDirectoryMirrors#FormattingChangesFiles

Once this is done, the list gets backported to 0.2.8 and later.
But the rest of the changes go into master.

> 5. Announce the new list on tor-relays@

Example: https://lists.torproject.org/pipermail/tor-relays/2017-May/012285.html

> 6. Tell the relay search maintainer that the list has changed


Tim / teor

PGP C855 6CED 5D90 A0C5 29F6 4D43 450C BA7F 968F 094B

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Message signed with OpenPGP
URL: <http://lists.torproject.org/pipermail/tor-dev/attachments/20171213/c3013021/attachment.sig>

More information about the tor-dev mailing list