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

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Sep 3 11:12:29 UTC 2014


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

Comment (by yawning):

 Replying to [comment:11 asn]:
 > Some review up to `79e94103d6bf7685c78e991f0d1b93b0eecefa3d`:
 >
 > - It doesn't matter much, but I prefer `--version` or `-v` over
 `-version`. I think that's what the GNU standard suggests. Can you support
 both `-v` and `--version`?

 Both is kind of annoying but doable (as in, it would pollute the usage
 list and make things look messy) because of how primitive Go's `flag`
 package is.  `--version` works as is, I just documented it as `-version`
 for brevity.

 > - Here are the contents of a new log file after the log tiers were
 added:
 > {{{
 > 2014/09/03 13:23:19 [WARN]: obfs3([scrubbed]:27078) - handshake failed:
 EOF
 > 2014/09/03 13:23:19 [WARN]: obfs3([scrubbed]:27080) - handshake failed:
 EOF
 > 2014/09/03 13:23:33 [WARN]: obfs3([scrubbed]:12889) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:23:34 [WARN]: obfs3([scrubbed]:50767) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:23:36 [WARN]: obfs3([scrubbed]:51263) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:23:52 [WARN]: obfs3([scrubbed]:61503) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:24:17 [WARN]: obfs3([scrubbed]:51515) - closed connection:
 write: connection reset by peer
 > 2014/09/03 13:24:32 [WARN]: obfs3([scrubbed]:29223) - handshake failed:
 read: i/o timeout
 > 2014/09/03 13:24:36 [WARN]: obfs3([scrubbed]:10791) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:24:43 [WARN]: obfs3([scrubbed]:11820) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:24:46 [WARN]: obfs3([scrubbed]:17999) - closed connection:
 read: connection reset by peer
 > 2014/09/03 13:24:47 [WARN]: obfs3([scrubbed]:2171) - handshake failed:
 read: i/o timeout
 > 2014/09/03 13:24:56 [WARN]: obfs3([scrubbed]:52261) - handshake failed:
 EOF
 > 2014/09/03 13:24:57 [WARN]: obfs3([scrubbed]:52263) - handshake failed:
 EOF
 > }}}
 >
 >   Notice that it's full of innocent handshake failures warnings. This is
 suboptimal, I think.

 Hmm, not sure how I should disambiguate "people potentially doing evil
 things" vs "innocent handshake failures".  I don't particularly see the
 log as being useful for anything but testing/debugging to be honest, so
 the idea still is "enable if needed to troubleshoot".

 If you have a suggestion for how to disambiguate this in a way that's not
 "suppress common socket errors", please let me know.

 >   Also, there should be a log prologue when obfs4proxy starts up,
 mentioning the obfs4proxy version. Otherwise, it's hard to know when
 obfs4proxy was restarted.

 I'll do this right now.

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


More information about the tor-bugs mailing list