Merge branch 'master' of github.com:spesmilo/electrum
This commit is contained in:
commit
8423234bbd
|
@ -4,7 +4,8 @@ from binascii import hexlify, unhexlify
|
|||
|
||||
from electrum.util import bfh, bh2u
|
||||
from electrum.bitcoin import (b58_address_to_hash160, xpub_from_pubkey,
|
||||
TYPE_ADDRESS, TYPE_SCRIPT, NetworkConstants)
|
||||
TYPE_ADDRESS, TYPE_SCRIPT, NetworkConstants,
|
||||
is_segwit_address)
|
||||
from electrum.i18n import _
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.transaction import deserialize
|
||||
|
@ -183,11 +184,11 @@ class TrezorCompatiblePlugin(HW_PluginBase):
|
|||
|
||||
if method == TIM_NEW:
|
||||
strength = 64 * (item + 2) # 128, 192 or 256
|
||||
u2f_counter = 0
|
||||
skip_backup = False
|
||||
client.reset_device(True, strength, passphrase_protection,
|
||||
pin_protection, label, language,
|
||||
u2f_counter, skip_backup)
|
||||
args = [True, strength, passphrase_protection,
|
||||
pin_protection, label, language]
|
||||
if self.device == 'TREZOR':
|
||||
args.extend([0, False]) # u2f_counter, skip_backup
|
||||
client.reset_device(*args)
|
||||
elif method == TIM_RECOVER:
|
||||
word_count = 6 * (item + 2) # 12, 18 or 24
|
||||
client.step = 0
|
||||
|
@ -351,7 +352,19 @@ class TrezorCompatiblePlugin(HW_PluginBase):
|
|||
txoutputtype.script_type = self.types.PAYTOOPRETURN
|
||||
txoutputtype.op_return_data = address[2:]
|
||||
elif _type == TYPE_ADDRESS:
|
||||
txoutputtype.script_type = self.types.PAYTOADDRESS
|
||||
# trezor would be fine with self.types.PAYTOADDRESS
|
||||
# for any non-change output
|
||||
# but we need to maintain keepkey compatibility in this cls
|
||||
if is_segwit_address(address):
|
||||
txoutputtype.script_type = self.types.PAYTOWITNESS
|
||||
else:
|
||||
addrtype, hash_160 = b58_address_to_hash160(address)
|
||||
if addrtype == NetworkConstants.ADDRTYPE_P2PKH:
|
||||
txoutputtype.script_type = self.types.PAYTOADDRESS
|
||||
elif addrtype == NetworkConstants.ADDRTYPE_P2SH:
|
||||
txoutputtype.script_type = self.types.PAYTOSCRIPTHASH
|
||||
else:
|
||||
raise BaseException('addrtype: ' + str(addrtype))
|
||||
txoutputtype.address = address
|
||||
|
||||
outputs.append(txoutputtype)
|
||||
|
|
Loading…
Reference in New Issue