circuit `NoneType` in obfs3 handshake callbacks
Since my obfs3 bridge has gotten more popular, I decided to enable logging and I noticed that I've been getting these errors:
2014-05-06 15:49:51,869 [ERROR] Unhandled error in Deferred:
2014-05-06 15:49:51,870 [ERROR] Unhandled Error
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/Twisted-13.2.0-py2.7-linux-x86_64.egg/twisted/internet/base.py", line 1201, in mainLoop
self.runUntilCurrent()
File "/usr/local/lib/python2.7/dist-packages/Twisted-13.2.0-py2.7-linux-x86_64.egg/twisted/internet/base.py", line 797, in runUntilCurrent
f(*a, **kw)
File "/usr/local/lib/python2.7/dist-packages/Twisted-13.2.0-py2.7-linux-x86_64.egg/twisted/internet/defer.py", line 382, in callback
self._startRunCallbacks(result)
File "/usr/local/lib/python2.7/dist-packages/Twisted-13.2.0-py2.7-linux-x86_64.egg/twisted/internet/defer.py", line 490, in _startRunCallbacks
self._runCallbacks()
--- <exception caught here> ---
File "/usr/local/lib/python2.7/dist-packages/Twisted-13.2.0-py2.7-linux-x86_64.egg/twisted/internet/defer.py", line 577, in _runCallbacks
current.result = callback(current.result, *args, **kw)
File "/usr/local/lib/python2.7/dist-packages/obfsproxy-0.2.9_1_g4c41868-py2.7.egg/obfsproxy/transports/obfs3.py", line 154, in _uniform_dh_errback
self.circuit.close()
exceptions.AttributeError: 'NoneType' object has no attribute 'close'
(This used to be #11769 (closed) but it now has its own ticket)