Browse Source

don't use bare except

283
Bryan Stitt 11 years ago
parent
commit
225d8b83a3
  1. 8
      lib/bitcoin.py
  2. 8
      lib/blockchain.py
  3. 2
      lib/commands.py
  4. 18
      lib/interface.py
  5. 2
      lib/network.py
  6. 4
      lib/plugins.py
  7. 4
      lib/simple_config.py
  8. 2
      lib/transaction.py
  9. 14
      lib/wallet.py

8
lib/bitcoin.py

@ -115,7 +115,7 @@ def hash_160(public_key):
md = hashlib.new('ripemd160') md = hashlib.new('ripemd160')
md.update(hashlib.sha256(public_key).digest()) md.update(hashlib.sha256(public_key).digest())
return md.digest() return md.digest()
except: except Exception:
import ripemd import ripemd
md = ripemd.new(hashlib.sha256(public_key).digest()) md = ripemd.new(hashlib.sha256(public_key).digest())
return md.digest() return md.digest()
@ -268,7 +268,7 @@ def is_valid(addr):
if not ADDRESS_RE.match(addr): return False if not ADDRESS_RE.match(addr): return False
try: try:
addrtype, h = bc_address_to_hash_160(addr) addrtype, h = bc_address_to_hash_160(addr)
except: except Exception:
return False return False
return addr == hash_160_to_bc_address(h, addrtype) return addr == hash_160_to_bc_address(h, addrtype)
@ -277,7 +277,7 @@ def is_valid(addr):
try: try:
from ecdsa.ecdsa import curve_secp256k1, generator_secp256k1 from ecdsa.ecdsa import curve_secp256k1, generator_secp256k1
except: except Exception:
print "cannot import ecdsa.curve_secp256k1. You probably need to upgrade ecdsa.\nTry: sudo pip install --upgrade ecdsa" print "cannot import ecdsa.curve_secp256k1. You probably need to upgrade ecdsa.\nTry: sudo pip install --upgrade ecdsa"
exit() exit()
from ecdsa.curves import SECP256k1 from ecdsa.curves import SECP256k1
@ -316,7 +316,7 @@ class EC_KEY(object):
try: try:
self.verify_message( address, sig, message) self.verify_message( address, sig, message)
return sig return sig
except: except Exception:
continue continue
else: else:
raise Exception("error: cannot sign message") raise Exception("error: cannot sign message")

8
lib/blockchain.py

@ -119,7 +119,7 @@ class Blockchain(threading.Thread):
assert prev_hash == header.get('prev_block_hash') assert prev_hash == header.get('prev_block_hash')
assert bits == header.get('bits') assert bits == header.get('bits')
assert eval('0x'+_hash) < target assert eval('0x'+_hash) < target
except: except Exception:
return False return False
prev_header = header prev_header = header
@ -176,7 +176,7 @@ class Blockchain(threading.Thread):
assert prev_hash == header.get('prev_block_hash') assert prev_hash == header.get('prev_block_hash')
assert bits == header.get('bits') assert bits == header.get('bits')
assert eval('0x'+_hash) < target assert eval('0x'+_hash) < target
except: except Exception:
# this can be caused by a reorg. # this can be caused by a reorg.
print_error("verify header failed"+ repr(header)) print_error("verify header failed"+ repr(header))
verifier.undo_verifications() verifier.undo_verifications()
@ -227,7 +227,7 @@ class Blockchain(threading.Thread):
print_error("downloading ", self.headers_url ) print_error("downloading ", self.headers_url )
urllib.urlretrieve(self.headers_url, filename) urllib.urlretrieve(self.headers_url, filename)
print_error("done.") print_error("done.")
except: except Exception:
print_error( "download failed. creating file", filename ) print_error( "download failed. creating file", filename )
open(filename,'wb+').close() open(filename,'wb+').close()
@ -411,7 +411,7 @@ class Blockchain(threading.Thread):
index = params[0] index = params[0]
try: try:
self.verify_chunk(index, result) self.verify_chunk(index, result)
except: except Exception:
print_error('Verify chunk failed!!') print_error('Verify chunk failed!!')
return False return False
requested_chunks.remove(index) requested_chunks.remove(index)

2
lib/commands.py

@ -306,7 +306,7 @@ class Commands:
tx_hash, conf, is_mine, value, fee, balance, timestamp = item tx_hash, conf, is_mine, value, fee, balance, timestamp = item
try: try:
time_str = datetime.datetime.fromtimestamp( timestamp).isoformat(' ')[:-3] time_str = datetime.datetime.fromtimestamp( timestamp).isoformat(' ')[:-3]
except: except Exception:
time_str = "----" time_str = "----"
label, is_default_label = self.wallet.get_label(tx_hash) label, is_default_label = self.wallet.get_label(tx_hash)

18
lib/interface.py

@ -49,7 +49,7 @@ def check_cert(host, cert):
def cert_has_expired(cert_path): def cert_has_expired(cert_path):
try: try:
import OpenSSL import OpenSSL
except: except Exception:
print_error("Warning: cannot import OpenSSL") print_error("Warning: cannot import OpenSSL")
return False return False
from OpenSSL import crypto as c from OpenSSL import crypto as c
@ -112,7 +112,7 @@ class Interface(threading.Thread):
try: try:
host, port, protocol = self.server.split(':') host, port, protocol = self.server.split(':')
port = int(port) port = int(port)
except: except Exception:
self.server = None self.server = None
return return
@ -196,7 +196,7 @@ class Interface(threading.Thread):
self.connection_msg = ('https' if self.use_ssl else 'http') + '://%s:%d'%( self.host, self.port ) self.connection_msg = ('https' if self.use_ssl else 'http') + '://%s:%d'%( self.host, self.port )
try: try:
self.poll() self.poll()
except: except Exception:
print_error("http init session failed") print_error("http init session failed")
self.is_connected = False self.is_connected = False
return return
@ -218,7 +218,7 @@ class Interface(threading.Thread):
break break
except socket.error: except socket.error:
break break
except: except Exception:
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
break break
@ -265,7 +265,7 @@ class Interface(threading.Thread):
try: try:
req = urllib2.Request(self.connection_msg, data_json, headers) req = urllib2.Request(self.connection_msg, data_json, headers)
response_stream = urllib2.urlopen(req, timeout=DEFAULT_TIMEOUT) response_stream = urllib2.urlopen(req, timeout=DEFAULT_TIMEOUT)
except: except Exception:
return return
for index, cookie in enumerate(cj): for index, cookie in enumerate(cj):
@ -318,7 +318,7 @@ class Interface(threading.Thread):
s = socket.socket( socket.AF_INET, socket.SOCK_STREAM ) s = socket.socket( socket.AF_INET, socket.SOCK_STREAM )
try: try:
s.connect((self.host, self.port)) s.connect((self.host, self.port))
except: except Exception:
# print_error("failed to connect", self.host, self.port) # print_error("failed to connect", self.host, self.port)
return return
@ -346,7 +346,7 @@ class Interface(threading.Thread):
try: try:
s.connect(( self.host.encode('ascii'), int(self.port))) s.connect(( self.host.encode('ascii'), int(self.port)))
except: except Exception:
print_error("failed to connect", self.host, self.port) print_error("failed to connect", self.host, self.port)
return return
@ -370,7 +370,7 @@ class Interface(threading.Thread):
else: else:
print_msg("wrong certificate", self.host) print_msg("wrong certificate", self.host)
return return
except: except Exception:
print_error("wrap_socket failed", self.host) print_error("wrap_socket failed", self.host)
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
return return
@ -424,7 +424,7 @@ class Interface(threading.Thread):
c = json.loads(c) c = json.loads(c)
self.queue_json_response(c) self.queue_json_response(c)
except: except Exception:
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
self.is_connected = False self.is_connected = False

2
lib/network.py

@ -385,7 +385,7 @@ class Network(threading.Thread):
if pruning_level == '': pruning_level = '0' if pruning_level == '': pruning_level = '0'
try: try:
is_recent = float(version)>=float(PROTOCOL_VERSION) is_recent = float(version)>=float(PROTOCOL_VERSION)
except: except Exception:
is_recent = False is_recent = False
if out and is_recent: if out and is_recent:

4
lib/plugins.py

@ -24,7 +24,7 @@ def init_plugins(self):
for name, p in zip(plugin_names, plugin_modules): for name, p in zip(plugin_names, plugin_modules):
try: try:
plugins.append( p.Plugin(self, name) ) plugins.append( p.Plugin(self, name) )
except: except Exception:
print_msg(_("Error: cannot initialize plugin"),p) print_msg(_("Error: cannot initialize plugin"),p)
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
@ -45,7 +45,7 @@ def run_hook(name, *args):
try: try:
f(*args) f(*args)
except: except Exception:
print_error("Plugin error") print_error("Plugin error")
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)

4
lib/simple_config.py

@ -103,7 +103,7 @@ a SimpleConfig instance then reads the wallet file.
import ast import ast
try: try:
out = ast.literal_eval(out) out = ast.literal_eval(out)
except: except Exception:
print "type error for '%s': using default value"%key print "type error for '%s': using default value"%key
out = default out = default
@ -154,7 +154,7 @@ a SimpleConfig instance then reads the wallet file.
return return
try: try:
d = ast.literal_eval( data ) #parse raw data from reading wallet file d = ast.literal_eval( data ) #parse raw data from reading wallet file
except: except Exception:
raise IOError("Cannot read config file.") raise IOError("Cannot read config file.")
self.user_config = d self.user_config = d

2
lib/transaction.py

@ -298,7 +298,7 @@ def match_decoded(decoded, to_match):
def get_address_from_input_script(bytes): def get_address_from_input_script(bytes):
try: try:
decoded = [ x for x in script_GetOp(bytes) ] decoded = [ x for x in script_GetOp(bytes) ]
except: except Exception:
# coinbase transactions raise an exception # coinbase transactions raise an exception
print_error("cannot find address in input script", bytes.encode('hex')) print_error("cannot find address in input script", bytes.encode('hex'))
return [], [], "(None)" return [], [], "(None)"

14
lib/wallet.py

@ -55,7 +55,7 @@ def pw_decode(s, password):
secret = Hash(password) secret = Hash(password)
try: try:
d = DecodeAES(secret, s) d = DecodeAES(secret, s)
except: except Exception:
raise Exception('Invalid password') raise Exception('Invalid password')
return d return d
else: else:
@ -117,7 +117,7 @@ class WalletStorage:
return return
try: try:
d = ast.literal_eval( data ) #parse raw data from reading wallet file d = ast.literal_eval( data ) #parse raw data from reading wallet file
except: except Exception:
raise IOError("Cannot read wallet file.") raise IOError("Cannot read wallet file.")
self.data = d self.data = d
@ -192,7 +192,7 @@ class Wallet:
for k,v in tx_list.items(): for k,v in tx_list.items():
try: try:
tx = Transaction(v) tx = Transaction(v)
except: except Exception:
print_msg("Warning: Cannot deserialize transactions. skipping") print_msg("Warning: Cannot deserialize transactions. skipping")
continue continue
@ -256,7 +256,7 @@ class Wallet:
seed = self.get_seed(password) seed = self.get_seed(password)
try: try:
address = address_from_private_key(sec) address = address_from_private_key(sec)
except: except Exception:
raise Exception('Invalid private key') raise Exception('Invalid private key')
if self.is_mine(address): if self.is_mine(address):
@ -314,7 +314,7 @@ class Wallet:
self.seed_version = 4 self.seed_version = 4
self.seed = str(seed) self.seed = str(seed)
return return
except: except Exception:
pass pass
words = seed.split() words = seed.split()
@ -324,7 +324,7 @@ class Wallet:
#try: #try:
# mnemonic.mn_decode(words) # mnemonic.mn_decode(words)
# uses_electrum_words = True # uses_electrum_words = True
#except: #except Exception:
# uses_electrum_words = False # uses_electrum_words = False
# #
#if uses_electrum_words and len(words) != 13: #if uses_electrum_words and len(words) != 13:
@ -608,7 +608,7 @@ class Wallet:
try: try:
K, Kc = get_pubkeys_from_secret(master_k.decode('hex')) K, Kc = get_pubkeys_from_secret(master_k.decode('hex'))
assert K.encode('hex') == master_K assert K.encode('hex') == master_K
except: except Exception:
raise Exception("Invalid password") raise Exception("Invalid password")
return master_k return master_k

Loading…
Cancel
Save