[tor-bugs] #20451 [Obfuscation/meek]: The communication stream of managed proxy '/usr/bin/meek-client' is 'closed'

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Mar 31 07:50:39 UTC 2017


#20451: The communication stream of managed proxy '/usr/bin/meek-client' is
'closed'
------------------------------+--------------------------
 Reporter:  tagener-noisu     |          Owner:  dcf
     Type:  defect            |         Status:  reopened
 Priority:  Medium            |      Milestone:
Component:  Obfuscation/meek  |        Version:
 Severity:  Normal            |     Resolution:
 Keywords:                    |  Actual Points:
Parent ID:                    |         Points:
 Reviewer:                    |        Sponsor:
------------------------------+--------------------------
Changes (by dcf):

 * status:  closed => reopened
 * resolution:  fixed =>


Comment:

 Replying to [comment:7 tnoisu]:
 > Hi, I can't login into my old account ''tagener-noisu'', so I have
 created another one. The problem was that meek wasn't able to create a log
 file in the working directory. I've changed the log path like this `--log
 /tmp/meek-client.log` to fix it. I think that meek should just work
 without logging if it couldn't create a log file. Should I report this
 issue to developer's github?

 I'm the developer so this is the right place to report it. Sorry for the
 delay.

 I don't like the idea of silently continuing if the log file fails to
 open. The way it fails now is pretty bad though, because it leaves no
 trace of an error message.

 It would be good if an error message appeared in tor's log, even if the
 pluggable transport can't write its own log file. Unfortunately, the
 [https://spec.torproject.org/pt-spec pluggable transports spec] doesn't
 really give us a way to report general errors. We could abuse the
 `CMETHOD-ERROR` or `PROXY-ERROR` messages; those appear in tor's log.
 `CMETHOD-ERROR` appears like this:
 {{{
 [warn] Client managed proxy encountered a method error. (meek error
 opening log file: open meek-client.log: permission denied)
 [warn] Managed proxy at './meek-client' failed the configuration protocol
 and will be destroyed.
 }}}
 `PROXY-ERROR` appears like this:
 {{{
 [warn] Managed proxy failed to configure the pluggable transport's
 outgoing proxy. (error opening log file: open meek-client.log: permission
 denied)
 [warn] Managed proxy at './meek-client' failed the configuration protocol
 and will be destroyed.
 }}}

 Of these two options, `CMETHOD-ERROR` seems better than `PROXY-ERROR`
 because it won't add a misleading message about a proxy in the log. It's
 not totally correct because we're not supposed to emit a `CMETHOD-ERROR`
 unless we're asked for a specific client method, and we would be emitting
 this error very early, before even looking at the list of client methods.
 However, I don't think it will be a problem in practice.

 attachment:0001-Emit-a-CMETHOD-ERROR-or-SMETHOD-ERROR-when-failing-t.patch
 is an example patch for review.

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


More information about the tor-bugs mailing list