obfs-flash-client does not reconnect well when browser proxy reconnects
From [#ticket:7167:comment:42]; assigning to obfsproxy as that is our current theory.
I've found a problem with the current set-up. I'm not sure why it's happening, but it's something special about our plugin composition.
If I disconnect my browser proxy and reconnect it (by reloading the page), with flashproxy-client tor is able to recover and I can continue browsing. However, with obfs-flash-client, tor is unable to do this and I get a bunch of error messages like this:
Oct 11 19:32:59.000 [notice] We tried for 15 seconds to connect to '[scrubbed]' using exit X1 at A1. Retrying on a new circuit.
[x4]
Oct 11 19:33:14.000 [notice] We tried for 15 seconds to connect to '[scrubbed]' using exit X2 at A2. Retrying on a new circuit.
[x4]
Oct 11 19:33:29.000 [notice] We tried for 15 seconds to connect to '[scrubbed]' using exit X3 at A3. Retrying on a new circuit.
[x4]
To reproduce: [the new facilitator is running in the standard location, so just use the standard torrc]
edit: It does seem to recover after several more minutes though.
Some later theorising:
What I'd try first is probably enable debug logging on obfsproxy. flashproxy-client disconnects its LOCAL port when a REMOTE disappears. Usually LOCAL is Tor itself, which reconnects in such a situation. Maybe obfsproxy doesn't reconnect in the same way, or maybe flashproxy-client needs optionally not to disconnect LOCAL. ah sounds plausible It's a good find, as disconnecting flash proxies is certainly the norm. I would expect tor to make a new socks connection to obfsproxy, which should in turn make a fresh connection to the socks shim, but I'm not sure.