[Pkg-anonymity-tools] [onionshare] 85/140: try connecting to Tor SOCKS5 server on ports 9050 and 9150, instead of just 9150 (#136)
Ulrike Uhlig
u-guest at moszumanska.debian.org
Mon Sep 29 20:33:50 UTC 2014
This is an automated email from the git hooks/post-receive script.
u-guest pushed a commit to branch master
in repository onionshare.
commit bfcd5190bd34ccefbd1b48ce59b2cd880861c30c
Author: Micah Lee <micah at micahflee.com>
Date: Wed Sep 3 14:23:03 2014 -0700
try connecting to Tor SOCKS5 server on ports 9050 and 9150, instead of just 9150 (#136)
---
onionshare/onionshare.py | 28 +++++++++++++++++++---------
onionshare/strings.json | 1 +
2 files changed, 20 insertions(+), 9 deletions(-)
diff --git a/onionshare/onionshare.py b/onionshare/onionshare.py
index 8e1ba6e..bf8bf84 100644
--- a/onionshare/onionshare.py
+++ b/onionshare/onionshare.py
@@ -91,15 +91,16 @@ class OnionShare(object):
self.cleanup_filenames.append(hidserv_dir)
# connect to the tor controlport
- controlports = [9051, 9151]
controller = False
- for controlport in controlports:
+ tor_control_ports = [9051, 9151]
+ for tor_control_port in tor_control_ports:
try:
- controller = Controller.from_port(port=controlport)
+ controller = Controller.from_port(port=tor_control_port)
+ break
except SocketError:
pass
if not controller:
- raise NoTor(strings._("cant_connect_ctrlport").format(controlports))
+ raise NoTor(strings._("cant_connect_ctrlport").format(tor_control_ports))
controller.authenticate()
# set up hidden service
@@ -129,11 +130,20 @@ class OnionShare(object):
# so no need to set the socks5 proxy
urllib2.urlopen('http://{0}'.format(self.onion_host))
else:
- s = socks.socksocket()
- s.setproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', 9150)
- s.connect((self.onion_host, 80))
- #s.sendall('GET / HTTP/1.1\r\n\r\n')
- s.close()
+ tor_exists = False
+ tor_socks_ports = [9050, 9150]
+ for tor_socks_port in tor_socks_ports:
+ try:
+ s = socks.socksocket()
+ s.setproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', tor_socks_port)
+ s.connect((self.onion_host, 80))
+ s.close()
+ tor_exists = True
+ break
+ except socks.ProxyConnectionError:
+ pass
+ if not tor_exists:
+ raise NoTor(strings._("cant_connect_socksport").format(tor_socks_ports))
ready = True
sys.stdout.write('{0}\n'.format(strings._('wait_for_hs_yup')))
diff --git a/onionshare/strings.json b/onionshare/strings.json
index 78cb4be..4153c92 100644
--- a/onionshare/strings.json
+++ b/onionshare/strings.json
@@ -2,6 +2,7 @@
"calculating_sha1": "Calculating SHA1 checksum.",
"connecting_ctrlport": "Connecting to Tor control port to set up hidden service on port {0}.",
"cant_connect_ctrlport": "Cannot connect to Tor control port on port {0}. Is Tor running?",
+ "cant_connect_socksport": "Cannot connect to Tor SOCKS5 server on port {0}. Is Tor running?",
"preparing_files": "Preparing files to share.",
"wait_for_hs": "Waiting for HS to be ready:",
"wait_for_hs_trying": "Trying...",
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/onionshare.git
More information about the Pkg-anonymity-tools
mailing list