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

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Nov 2 15:33:50 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:               |
-----------------------------+------------------------------

Comment (by dcf):

 Replying to [comment:22 yawning]:
 > Replying to [comment:21 dcf]:
 > > Posting this from a go-fw-helper–enabled flashproxy Tor Browser. I
 suppose it would stop working after a while because flashproxy-client is
 not renewing the mappings, but for now it's working great.
 >
 > Depends on which protocol it happened to use.  If it's UPnP it should
 work indefinitely, as long as the router doesn't reboot/misbehave.  I
 could crank up the default lease time for NAT-PMP as a short term
 workaround (the current default value is from the RFC though) as well.

 It's UPnP on Netgear WNR1000v3. I left the browser closed all night and
 the mapping is still there in the morning, so I guess you are right. Leave
 the NAT-PMP lease time alone; we have to solve that problem in flashproxy-
 client anyway.

 > > What I did:
 > >  1.
 > >     {{{
 > > cp ~/go-fw-helper/go-fw-helper Browser/TorBrowser/Tor/tor-fw-helper
 > > }}}
 > >  2. Edit Browser/TorBrowser/Data/Tor/torrc-defaults:
 > >     {{{
 > > ClientTransportPlugin flashproxy exec
 ./TorBrowser/Tor/PluggableTransports/flashproxy-client --register --port-
 forwarding-helper TorBrowser/Tor/tor-fw-helper --log flashproxy-client.log
 --unsafe-logging :0 :9000
 > > }}}
 > >  3. Allowed UDP from the gateway router and TCP port 9000 in my local
 firewall.
 >
 > Ooof.  As something I should document somewhere, the UPnP documentation
 mentions that certain routers do not support the internal port and the
 external port being different.  I'm not sure what the failure mode would
 be like in this case (given how awful some of the UPnP implementations in
 the wild are, I would assume the worst).

 Internal port and external port are the same here (9000). You're confused
 between flashproxy-client args and tor-fw-helper args. `:0` is the LOCAL
 port from https://gitweb.torproject.org/flashproxy.git/blob/HEAD:/doc
 /flashproxy-client.1.txt.

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


More information about the tor-bugs mailing list