[tahoe-lafs-trac-stream] [Tahoe-LAFS] #517: make tahoe Tor- and I2P-friendly
Tahoe-LAFS
trac at tahoe-lafs.org
Mon Sep 21 22:32:32 UTC 2015
#517: make tahoe Tor- and I2P-friendly
-------------------------+-------------------------------------------------
Reporter: warner | Owner: ioerror
Type: | Status: new
enhancement | Milestone: undecided
Priority: minor | Version: 1.2.0
Component: code- | Keywords: privacy anonymity anti-censorship
network | i2p tor-protocol usability
Resolution: |
Launchpad Bug: |
-------------------------+-------------------------------------------------
Comment (by str4d):
Replying to [comment:47 warner]:
> str4d: that's great! Are there any changes you'd like to see to the
foolscap (client-side) API before I make a new release? Barring any, I
plan to cut it later today, so we can make progress on the Tahoe side in
tomorrow's meeting.
For the in-client API, I think it is great. Once I remembered that only
the client side was implemented :P it was a trivial patch (see above).
For the plugin API, I have a few thoughts:
* Implementing the API feels a little duplicate-y. It's only four lines
(match regex, check for match, grab groups, fallback to None), but...
* There is currently no restriction on the format of the location hints,
so e.g. I could require different syntax in my I2P one than others. Is
this flexibility that we want to allow?
* By requiring plugins to check for themselves if a string is for them, it
allows earlier plugins to intercept the strings of later plugins (but not
to modify them).
All three points would be "solved" by having a hint-parsing method that
turns hints into groups, looking up an `IConnectionHintHandler`
corresponding to the parsed hint type (via a dict that is filled when
`addConnectionHintHandler()` is called), and passing the parsed groups to
`hint_to_endpoint()` as kwargs. But this is basically re-implementing the
Twisted endpoint string API. Is this worth the effort? Or am I over-
engineering?
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/517#comment:48>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list