[tahoe-lafs-trac-stream] [Tahoe-LAFS] #517: make tahoe Tor- and I2P-friendly

Tahoe-LAFS trac at tahoe-lafs.org
Fri Jul 8 07:53:49 UTC 2016


#517: make tahoe Tor- and I2P-friendly
-------------------------+-------------------------------------------------
     Reporter:  warner   |      Owner:  warner
         Type:           |     Status:  new
  enhancement            |
     Priority:  minor    |  Milestone:  1.13.0
    Component:  code-    |    Version:  1.2.0
  network                |   Keywords:  privacy anonymity anti-censorship
   Resolution:           |  i2p tor-protocol usability
Launchpad Bug:           |
-------------------------+-------------------------------------------------

Comment (by warner):

 I'm starting to sketch out the foolscap-side Tor connection handler, and
 I'm thinking that we should simply reject all the weird combinations of
 these arguments. What do you think about using this table instead?:


 || `enable` || `socks.port` || `control.port` || `launch` ||
 || false || * || * || * || (1) no Tor ||
 || (true) || (empty) || (empty) || (false) || (2) SOCKS on 9050/9150, no
 server ||
 || (true) || (empty) || (empty) || true || (3) launch Tor, ask new Tor to
 allocate a control port, ask it for SOCKS port ||
 || (true) || (empty) || set || (false) || (4) connect to pre-configured
 Tor on `control.port`, ask it for SOCKS port ||
 || (true) || (empty) || set || true || INVALID ||
 || (true) || HOST:PORT || (empty) || (false) || (5) SOCKS on HOST:PORT, no
 server ||
 || (true) || HOST:PORT || (empty) || true || INVALID ||
 || (true) || HOST:PORT || set || (false) || INVALID ||
 || (true) || HOST:PORT || set || true || INVALID ||

 That'd give us 5 cases. Case 5 uses the `txsocksx`-based handler. Case
 2+3+4 use the `txtorcon` one (with case 2 using the default behavior).
 Only cases 3 and 4 enable automatically-configured hidden-service
 listeners (2+5 can do outbound, but don't have a control port so they
 don't have a way to ask Tor to create a new onion service).

 Can anyone think of a good reason to use the other combinations? I'm
 especially looking to avoid parsing `control.port` to figure out how to
 tell a launched Tor to listen on it.

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/517#comment:83>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list