On 24 Dec 2017, at 08:16, Damian Johnson atagar@torproject.org wrote:
Hi Tim, added preliminary Stem parsing support for the v2 fallback format...
https://gitweb.torproject.org/stem.git/commit/?id=ea55eaa
Few thoughts are...
- It would be nice if the 'extrainfo=' lines were mandatory since I
need a delimiter between the entries.
We have a few alternatives here:
C requires a comma as the delimiter between entries. I can guarantee there will always be a comma delimiter after every entry, Including the last entry. I will also make sure that any comment fields come before this delimiter. I can guarantee there will never be a comma inside the C string or comments in the entry.
Alternately, I can make extrainfo mandatory, and if I can't fetch a relay's descriptor (a rare case?), I will mark is as 0.
But I'd like to be able to add extra fields in future without breaking parsers, so I don't want parsers relying on field order.
Do you want me to add an explicit end of record comment, or is the comma sufficient?
Is there a delimiter you'd like me to add before the first entry?
- Maybe we should start the document with a format version number?
I thought of that, too. Thanks for reminding me.
https://trac.torproject.org/projects/tor/ticket/24725
Cheers! -Damian
On Fri, Dec 22, 2017 at 6:53 AM, teor teor2345@gmail.com wrote: Hi all,
Some time in the next few weeks, the Tor fallback directory mirror file format will change. This affects stem and Relay Search, which parse this file.
Change Description
Here is a list of changes to the file format:
- the "weight" line has been removed, and replaced with a Tor config
default (#24679, #24681)
- the comma that separates fallback C strings is now on its own line
- a "nickname" comment has been added (#24600)
- an optional "extrainfo" comment has been added (#22759)
The added fields will be populated with placeholders until the list is rebuilt (#22271). This will hopefully happen some time in the next few weeks.
Requesting More Extra Info Caches
There are only a few fallbacks that cache extra-info documents. I checked 67, and only 4 cached extra-info documents.
atagar, do you want me to ask some fallback operators to set DownloadExtraInfo 1?
What number or proportion would you like?
(We allow approximately 25% of fallbacks to go down before we start to rebuild the list. In the worst case, this can mean that ~40% are down at some point.)
Example Entries
A sample entry in the new format, using actual relay info:
"5.9.110.236:9030 orport=9001 id=0756B7CD4DFC8182BE23143FAC0642F515182CEB" " ipv6=[2a01:4f8:162:51e2::2]:9001" /* nickname=rueckgrat */ /* extrainfo=1 */ ,
The current fallback file in the new format, with placeholders: https://github.com/teor2345/tor/blob/ticket22759_tree/src/or/fallback_dirs.i...
A small sample fallback file in the new format, with actual relay info: https://trac.torproject.org/projects/tor/attachment/ticket/22759/fallback_di...
Please let me know if you would like any changes to the format.
T
-- Tim Wilson-Brown (teor)
teor2345 at gmail dot com PGP C855 6CED 5D90 A0C5 29F6 4D43 450C BA7F 968F 094B ricochet:ekmygaiu4rzgsk6n xmpp: teor at torproject dot org
tor-dev mailing list tor-dev@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev