Closed elektito closed 8 years ago
After some poking around, this seems to be an artifact of SSLv3 being disabled in Python 2.7.9 and 3.5. Since I cannot upgrade the Python where Deluge daemon is running, nor can I change the decision to use Python 3.5, I had to find a hack to make things work. I found out I could update this line in client.py:
self._socket = ssl.wrap_socket(socket.socket(socket.AF_INET, socket.SOCK_STREAM))
to this:
self._socket = ssl.wrap_socket(socket.socket(socket.AF_INET, socket.SOCK_STREAM), ssl_version=ssl.PROTOCOL_SSLv3)
This forces the use of SSLv3.
I doubt I can do a lot to actually fix it. SSLv3 is disabled all-around due to the POODLE attack so I can't even force a connection in my test setup.
The real solution is to upgrade your Deluge daemon to 1.3.11 or higher because that's where they disabled SSLv3 support.
Anyways, I added some auto-detection logic that will handle the cases where it'd actually be possible to connect.
In Python 3.5.1 I get the following error when calling
connect
:Deluge daemon is version 1.3.6 using libtorrent 0.16.13.0. The deluge-client is the version available on pypi right now.
With Python 3.4.3 and 2.7.6 everything seems to be fine.