[tor-bugs] #13338 [Tor]: Rewrite tor-fw-helper in Go (or another memory-safe language)

Tor Bug Tracker & Wiki blackhole at torproject.org
Sat Oct 25 18:39:07 UTC 2014


#13338: Rewrite tor-fw-helper in Go (or another memory-safe language)
-----------------------------+------------------------------
     Reporter:  arma         |      Owner:  yawning
         Type:  enhancement  |     Status:  needs_review
     Priority:  minor        |  Milestone:  Tor: unspecified
    Component:  Tor          |    Version:
   Resolution:               |   Keywords:  flashproxy
Actual Points:               |  Parent ID:  #5213
       Points:               |
-----------------------------+------------------------------
Changes (by yawning):

 * status:  assigned => needs_review


Comment:

 Replying to [comment:15 nickm]:
 > What's needed on the deployment side?

 Depends on what we want to do with it.

 Tor Browser/Flashproxy:
  * flashproxy needs a code change to invoke the helper at least once every
 2 hours since that's the lowest lease time go-fw-helper can end up
 requesting (when NAT-PMP is used).
  * The standard deterministic build integration needs to be done in the
 Tor Browser descriptors, though this is easy-ish since we already ship go
 code and there are no additional external dependencies.
  * The default `torrc` shipped with Tor Browser needs to change to tell
 flashproxy about the helper.

 For people running relays:
  * No idea.  I guess packages for distributions?  Expert bundles?

 I was kind of being facetious when I made the comment since one of dcf and
 myself will make it work for PTs.  There's a few nasty-ish caveats that
 go-fw-helper inherited from tor-fw-helper related to not having a
 application code side supported mechanism for cleaning up leases that we
 need to think about as well.

 On a positive note, I debugged/tested the Windows `getGateway()`
 implementation I drycoded while waiting for the craptop to update itself,
 and it works, though the error that `GetBestRoute()` displays when there's
 no network connection isn't useful (But it does error out properly so,
 meh).

 I also caught a "does not compile on 32 bit systems" issue since I tested
 on 32 bit Win 7.

 Tenatively setting as `needs-review` since NAT-PMP works/should work on
 all the platforms we ship bundles for now (I say should because I only
 tested on FreeBSD and not Darwin).

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/13338#comment:16>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list