[tor-bugs] #12606 [Pluggable transport]: Refactor obfs4proxy (and the support protocol code)

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Aug 27 04:02:54 UTC 2014


#12606: Refactor obfs4proxy (and the support protocol code)
-------------------------------------+----------------------
     Reporter:  yawning              |      Owner:  yawning
         Type:  defect               |     Status:  accepted
     Priority:  normal               |  Milestone:
    Component:  Pluggable transport  |    Version:
   Resolution:                       |   Keywords:  obfs4
Actual Points:                       |  Parent ID:  #12130
       Points:                       |
-------------------------------------+----------------------
Changes (by yawning):

 * status:  new => accepted


Comment:

 Some of this is per discussion from a while back on IRC.

 Replying to [comment:2 asn]:
 > - It would be nice if `findMarkMac()` had a unittest.

 I could do this, but the code is well exercised via the exaustive tests in
 `handshake_ntor_test.go`, so I will hold off on this for now.

 > - You might want to consider stealing the integration tester of
 obfsproxy, even if it's just for your own testing. It has really helped
 over the years to find some dump code changes that break transports.

 I have some plans for a better integration tester, worst comes to worst I
 will do this just for the sake of being able to maintain the code (I don't
 think this is a release blocker though).

 > - In `serverSetup()` maybe you want to `continue` in:
 > {{{
 >               ln, err := net.ListenTCP("tcp", bindaddr.Addr)
 >               if err != nil {
 >                       pt.SmethodError(name, err.Error())
 >               }
 > }}}

 Fixed a while ago.

 > - Maybe you want to add a link to obfs2/obfs3 specs?

 Hmmm.  I could, but the protocols are deprecated/will be deprecated so no
 one should be writing new implementations of them.  I'll do a final pass
 on the README.md prior to tagging and I'll link to obfsproxy's copies from
 there.

 > - Installation instructions are needed.

 See above about updating the documentation prior to tagging.

 > - Maybe now is a good time to establish a ChangeLog too?

 Done.

 There's one more thing I want to do (make IAT parameters part of the
 bridge line, so people can chose to run bridges with more paranoia), but
 as far as I am aware apart from that, updating the documentation, and
 tagging a release the coding is done.

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


More information about the tor-bugs mailing list