Merge pull request #206 from lazlolazlolazlo/codestyle

Fix some small codestyle issues according to pep8.
This commit is contained in:
Micah Lee 2015-11-08 12:43:42 -08:00
commit 2b1a3e927e
8 changed files with 35 additions and 33 deletions

View File

@ -40,6 +40,7 @@ if get_platform() == 'Darwin':
else: else:
osx_resources_dir = None osx_resources_dir = None
def get_onionshare_dir(): def get_onionshare_dir():
if get_platform() == 'Darwin': if get_platform() == 'Darwin':
onionshare_dir = os.path.dirname(__file__) onionshare_dir = os.path.dirname(__file__)
@ -47,6 +48,7 @@ def get_onionshare_dir():
onionshare_dir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) onionshare_dir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
return onionshare_dir return onionshare_dir
def get_html_path(filename): def get_html_path(filename):
p = platform.system() p = platform.system()
if p == 'Darwin': if p == 'Darwin':

View File

@ -112,7 +112,7 @@ class OnionShare(object):
args = ['/usr/bin/sudo', '--', '/usr/bin/onionshare'] args = ['/usr/bin/sudo', '--', '/usr/bin/onionshare']
print "Executing: {0:s}".format(args+[str(self.port)]) print "Executing: {0:s}".format(args+[str(self.port)])
p = subprocess.Popen(args+[str(self.port)], stderr=subprocess.PIPE, stdout=subprocess.PIPE) p = subprocess.Popen(args+[str(self.port)], stderr=subprocess.PIPE, stdout=subprocess.PIPE)
stdout = p.stdout.read(22) # .onion URLs are 22 chars long stdout = p.stdout.read(22) # .onion URLs are 22 chars long
if stdout: if stdout:
self.onion_host = stdout self.onion_host = stdout
@ -227,7 +227,7 @@ class OnionShare(object):
except urllib2.HTTPError: # Tails error except urllib2.HTTPError: # Tails error
sys.stdout.write('{0:s}\n'.format(strings._('wait_for_hs_nope'))) sys.stdout.write('{0:s}\n'.format(strings._('wait_for_hs_nope')))
sys.stdout.flush() sys.stdout.flush()
except httplib.BadStatusLine: # Tails (with bridge) error except httplib.BadStatusLine: # Tails (with bridge) error
sys.stdout.write('{0:s}\n'.format(strings._('wait_for_hs_nope'))) sys.stdout.write('{0:s}\n'.format(strings._('wait_for_hs_nope')))
sys.stdout.flush() sys.stdout.flush()
except KeyboardInterrupt: except KeyboardInterrupt:

View File

@ -14,7 +14,7 @@ are permitted provided that the following conditions are met:
3. Neither the name of Dan Haim nor the names of his contributors may be used 3. Neither the name of Dan Haim nor the names of his contributors may be used
to endorse or promote products derived from this software without specific to endorse or promote products derived from this software without specific
prior written permission. prior written permission.
THIS SOFTWARE IS PROVIDED BY DAN HAIM "AS IS" AND ANY EXPRESS OR IMPLIED THIS SOFTWARE IS PROVIDED BY DAN HAIM "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
@ -40,7 +40,7 @@ mainly to merge bug fixes found in Sourceforge
Modifications made by Anorov (https://github.com/Anorov) Modifications made by Anorov (https://github.com/Anorov)
-Forked and renamed to PySocks -Forked and renamed to PySocks
-Fixed issue with HTTP proxy failure checking (same bug that was in the old ___recvall() method) -Fixed issue with HTTP proxy failure checking (same bug that was in the old ___recvall() method)
-Included SocksiPyHandler (sockshandler.py), to be used as a urllib2 handler, -Included SocksiPyHandler (sockshandler.py), to be used as a urllib2 handler,
courtesy of e000 (https://github.com/e000): https://gist.github.com/869791#file_socksipyhandler.py courtesy of e000 (https://github.com/e000): https://gist.github.com/869791#file_socksipyhandler.py
-Re-styled code to make it readable -Re-styled code to make it readable
-Aliased PROXY_TYPE_SOCKS5 -> SOCKS5 etc. -Aliased PROXY_TYPE_SOCKS5 -> SOCKS5 etc.
@ -136,7 +136,7 @@ def set_default_proxy(proxy_type=None, addr=None, port=None, rdns=True, username
Sets a default proxy which all further socksocket objects will use, Sets a default proxy which all further socksocket objects will use,
unless explicitly changed. unless explicitly changed.
""" """
socksocket.default_proxy = (proxy_type, addr.encode(), port, rdns, socksocket.default_proxy = (proxy_type, addr.encode(), port, rdns,
username.encode() if username else None, username.encode() if username else None,
password.encode() if password else None) password.encode() if password else None)
@ -200,7 +200,7 @@ class socksocket(socket.socket):
def __init__(self, family=socket.AF_INET, type=socket.SOCK_STREAM, proto=0, _sock=None): def __init__(self, family=socket.AF_INET, type=socket.SOCK_STREAM, proto=0, _sock=None):
_orig_socket.__init__(self, family, type, proto, _sock) _orig_socket.__init__(self, family, type, proto, _sock)
if self.default_proxy: if self.default_proxy:
self.proxy = self.default_proxy self.proxy = self.default_proxy
else: else:
@ -245,7 +245,7 @@ class socksocket(socket.socket):
password - Password to authenticate with to the server. password - Password to authenticate with to the server.
Only relevant when username is also provided. Only relevant when username is also provided.
""" """
self.proxy = (proxy_type, addr.encode(), port, rdns, self.proxy = (proxy_type, addr.encode(), port, rdns,
username.encode() if username else None, username.encode() if username else None,
password.encode() if password else None) password.encode() if password else None)
@ -292,18 +292,18 @@ class socksocket(socket.socket):
# No username/password were entered, therefore we # No username/password were entered, therefore we
# only support connections with no authentication. # only support connections with no authentication.
self.sendall(b"\x05\x01\x00") self.sendall(b"\x05\x01\x00")
# We'll receive the server's response to determine which # We'll receive the server's response to determine which
# method was selected # method was selected
chosen_auth = self._recvall(2) chosen_auth = self._recvall(2)
if chosen_auth[0:1] != b"\x05": if chosen_auth[0:1] != b"\x05":
# Note: string[i:i+1] is used because indexing of a bytestring # Note: string[i:i+1] is used because indexing of a bytestring
# via bytestring[i] yields an integer in Python 3 # via bytestring[i] yields an integer in Python 3
raise GeneralProxyError("SOCKS5 proxy server sent invalid data") raise GeneralProxyError("SOCKS5 proxy server sent invalid data")
# Check the chosen authentication method # Check the chosen authentication method
if chosen_auth[1:2] == b"\x02": if chosen_auth[1:2] == b"\x02":
# Okay, we need to perform a basic username/password # Okay, we need to perform a basic username/password
# authentication. # authentication.
@ -318,17 +318,17 @@ class socksocket(socket.socket):
if auth_status[1:2] != b"\x00": if auth_status[1:2] != b"\x00":
# Authentication failed # Authentication failed
raise SOCKS5AuthError("SOCKS5 authentication failed") raise SOCKS5AuthError("SOCKS5 authentication failed")
# Otherwise, authentication succeeded # Otherwise, authentication succeeded
# No authentication is required if 0x00 # No authentication is required if 0x00
elif chosen_auth[1:2] != b"\x00": elif chosen_auth[1:2] != b"\x00":
# Reaching here is always bad # Reaching here is always bad
if chosen_auth[1:2] == b"\xFF": if chosen_auth[1:2] == b"\xFF":
raise SOCKS5AuthError("All offered SOCKS5 authentication methods were rejected") raise SOCKS5AuthError("All offered SOCKS5 authentication methods were rejected")
else: else:
raise GeneralProxyError("SOCKS5 proxy server sent invalid data") raise GeneralProxyError("SOCKS5 proxy server sent invalid data")
# Now we can request the actual connection # Now we can request the actual connection
req = b"\x05\x01\x00" req = b"\x05\x01\x00"
# If the given destination address is an IP address, we'll # If the given destination address is an IP address, we'll
@ -349,7 +349,7 @@ class socksocket(socket.socket):
req += struct.pack(">H", dest_port) req += struct.pack(">H", dest_port)
self.sendall(req) self.sendall(req)
# Get the response # Get the response
resp = self._recvall(4) resp = self._recvall(4)
if resp[0:1] != b"\x05": if resp[0:1] != b"\x05":
@ -360,7 +360,7 @@ class socksocket(socket.socket):
# Connection failed: server returned an error # Connection failed: server returned an error
error = SOCKS5_ERRORS.get(status, "Unknown error") error = SOCKS5_ERRORS.get(status, "Unknown error")
raise SOCKS5Error("{:#04x}: {}".format(status, error)) raise SOCKS5Error("{:#04x}: {}".format(status, error))
# Get the bound address/port # Get the bound address/port
if resp[3:4] == b"\x01": if resp[3:4] == b"\x01":
bound_addr = self._recvall(4) bound_addr = self._recvall(4)
@ -369,7 +369,7 @@ class socksocket(socket.socket):
bound_addr = self._recvall(ord(resp[4:5])) bound_addr = self._recvall(ord(resp[4:5]))
else: else:
raise GeneralProxyError("SOCKS5 proxy server sent invalid data") raise GeneralProxyError("SOCKS5 proxy server sent invalid data")
bound_port = struct.unpack(">H", self._recvall(2))[0] bound_port = struct.unpack(">H", self._recvall(2))[0]
self.proxy_sockname = bound_addr, bound_port self.proxy_sockname = bound_addr, bound_port
if addr_bytes: if addr_bytes:
@ -394,15 +394,15 @@ class socksocket(socket.socket):
remote_resolve = True remote_resolve = True
else: else:
addr_bytes = socket.inet_aton(socket.gethostbyname(dest_addr)) addr_bytes = socket.inet_aton(socket.gethostbyname(dest_addr))
# Construct the request packet # Construct the request packet
req = struct.pack(">BBH", 0x04, 0x01, dest_port) + addr_bytes req = struct.pack(">BBH", 0x04, 0x01, dest_port) + addr_bytes
# The username parameter is considered userid for SOCKS4 # The username parameter is considered userid for SOCKS4
if username: if username:
req += username req += username
req += b"\x00" req += b"\x00"
# DNS name if remote resolving is required # DNS name if remote resolving is required
# NOTE: This is actually an extension to the SOCKS4 protocol # NOTE: This is actually an extension to the SOCKS4 protocol
# called SOCKS4A and may not be supported in all cases. # called SOCKS4A and may not be supported in all cases.
@ -439,25 +439,25 @@ class socksocket(socket.socket):
# If we need to resolve locally, we do this now # If we need to resolve locally, we do this now
addr = dest_addr if rdns else socket.gethostbyname(dest_addr) addr = dest_addr if rdns else socket.gethostbyname(dest_addr)
self.sendall(b"CONNECT " + addr.encode() + b":" + str(dest_port).encode() + self.sendall(b"CONNECT " + addr.encode() + b":" + str(dest_port).encode() +
b" HTTP/1.1\r\n" + b"Host: " + dest_addr.encode() + b"\r\n\r\n") b" HTTP/1.1\r\n" + b"Host: " + dest_addr.encode() + b"\r\n\r\n")
# We just need the first line to check if the connection was successful # We just need the first line to check if the connection was successful
fobj = self.makefile() fobj = self.makefile()
status_line = fobj.readline() status_line = fobj.readline()
fobj.close() fobj.close()
if not status_line: if not status_line:
raise GeneralProxyError("Connection closed unexpectedly") raise GeneralProxyError("Connection closed unexpectedly")
try: try:
proto, status_code, status_msg = status_line.split(" ", 2) proto, status_code, status_msg = status_line.split(" ", 2)
except ValueError: except ValueError:
raise GeneralProxyError("HTTP proxy server sent invalid response") raise GeneralProxyError("HTTP proxy server sent invalid response")
if not proto.startswith("HTTP/"): if not proto.startswith("HTTP/"):
raise GeneralProxyError("Proxy server does not appear to be an HTTP proxy") raise GeneralProxyError("Proxy server does not appear to be an HTTP proxy")
try: try:
status_code = int(status_code) status_code = int(status_code)
except ValueError: except ValueError:
@ -475,7 +475,7 @@ class socksocket(socket.socket):
self.proxy_peername = addr, dest_port self.proxy_peername = addr, dest_port
def connect(self, dest_pair): def connect(self, dest_pair):
""" """
Connects to the specified destination through a proxy. Connects to the specified destination through a proxy.
Uses the same API as socket's connect(). Uses the same API as socket's connect().
To select the proxy server, use set_proxy(). To select the proxy server, use set_proxy().
@ -500,7 +500,7 @@ class socksocket(socket.socket):
proxy_port = proxy_port or DEFAULT_PORTS.get(proxy_type) proxy_port = proxy_port or DEFAULT_PORTS.get(proxy_type)
if not proxy_port: if not proxy_port:
raise GeneralProxyError("Invalid proxy type") raise GeneralProxyError("Invalid proxy type")
try: try:
# Initial connection to proxy server # Initial connection to proxy server
_orig_socket.connect(self, (proxy_addr, proxy_port)) _orig_socket.connect(self, (proxy_addr, proxy_port))

View File

@ -146,7 +146,7 @@ def download(slug_candidate):
basename = os.path.basename(zip_filename) basename = os.path.basename(zip_filename)
def generate(): def generate():
chunk_size = 102400 # 100kb chunk_size = 102400 # 100kb
fp = open(zip_filename, 'rb') fp = open(zip_filename, 'rb')
done = False done = False

View File

@ -20,6 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
import os, sys, inspect, platform import os, sys, inspect, platform
from onionshare import helpers from onionshare import helpers
def get_onionshare_gui_dir(): def get_onionshare_gui_dir():
p = helpers.get_platform() p = helpers.get_platform()
if p == 'Darwin': if p == 'Darwin':

View File

@ -26,7 +26,7 @@ import common
try: try:
import onionshare import onionshare
except ImportError: except ImportError:
sys.path.append(os.path.abspath(common.onionshare_gui_dir+"/..")) sys.path.append(os.path.abspath(common.onionshare_gui_dir + "/.."))
import onionshare import onionshare
from onionshare import strings, helpers, web from onionshare import strings, helpers, web

View File

@ -28,7 +28,7 @@ class Options(QtGui.QHBoxLayout):
super(Options, self).__init__() super(Options, self).__init__()
self.web = web self.web = web
# close automatically # close automatically
self.close_automatically = QtGui.QCheckBox() self.close_automatically = QtGui.QCheckBox()
if self.web.stay_open: if self.web.stay_open:
@ -46,4 +46,3 @@ class Options(QtGui.QHBoxLayout):
self.web.set_stay_open(False) self.web.set_stay_open(False)
else: else:
self.web.set_stay_open(True) self.web.set_stay_open(True)

View File

@ -144,7 +144,7 @@ class ServerStatus(QtGui.QVBoxLayout):
GMEM_DDESHARE = 0x2000 GMEM_DDESHARE = 0x2000
ctypes.windll.user32.OpenClipboard(None) ctypes.windll.user32.OpenClipboard(None)
ctypes.windll.user32.EmptyClipboard() ctypes.windll.user32.EmptyClipboard()
hcd = ctypes.windll.kernel32.GlobalAlloc(GMEM_DDESHARE, len(bytes(url))+1) hcd = ctypes.windll.kernel32.GlobalAlloc(GMEM_DDESHARE, len(bytes(url)) + 1)
pch_data = ctypes.windll.kernel32.GlobalLock(hcd) pch_data = ctypes.windll.kernel32.GlobalLock(hcd)
ctypes.cdll.msvcrt.strcpy(ctypes.c_char_p(pch_data), bytes(url)) ctypes.cdll.msvcrt.strcpy(ctypes.c_char_p(pch_data), bytes(url))
ctypes.windll.kernel32.GlobalUnlock(hcd) ctypes.windll.kernel32.GlobalUnlock(hcd)