Skip to content

Commit

Permalink
Merge #519: Update keepkey port to 11044
Browse files Browse the repository at this point in the history
d8f265a Update keepkey port to 11044 (Pavol Rusnak)

Pull request description:

  Fixes #517

ACKs for top commit:
  achow101:
    ACK d8f265a

Tree-SHA512: 1f1386e725fd356616f34a9d6c6a4e3ff37949fd8ad5d8942a10c580a853bd9a7221b68239fcd7bdbf82121c6efb0bfb4edc168443f2dc77a202a6aed52d3e4c
  • Loading branch information
achow101 committed Aug 6, 2021
2 parents 5fc9322 + d8f265a commit 61cacc8
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 17 deletions.
2 changes: 1 addition & 1 deletion hwilib/devices/keepkey.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ def enumerate(password: str = "") -> List[Dict[str, Any]]:
if 'keepkey' not in client.client.features.vendor:
continue

if d_data['path'] == 'udp:127.0.0.1:21324':
if d_data['path'] == 'udp:127.0.0.1:11044':
d_data['model'] += '_simulator'

d_data['needs_pin_sent'] = client.client.features.pin_protection and not client.client.features.unlocked
Expand Down
32 changes: 16 additions & 16 deletions test/test_keepkey.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ def start(self):
# Wait for emulator to be up
# From https://github.com/trezor/trezor-firmware/blob/master/legacy/script/wait_for_emulator.py
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect(('127.0.0.1', 21324))
sock.connect(('127.0.0.1', 11044))
sock.settimeout(0)
while True:
try:
Expand Down Expand Up @@ -146,16 +146,16 @@ def test_getxpub(self):
load_device_by_mnemonic(client=self.client, mnemonic=vec['mnemonic'], pin='', passphrase_protection=False, label='test', language='english')

# Test getmasterxpub
gmxp_res = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:21324', 'getmasterxpub', "--addr-type", "legacy"])
gmxp_res = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:11044', 'getmasterxpub', "--addr-type", "legacy"])
self.assertEqual(gmxp_res['xpub'], vec['master_xpub'])

# Test the path derivs
for path_vec in vec['vectors']:
gxp_res = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:21324', 'getxpub', path_vec['path']])
gxp_res = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:11044', 'getxpub', path_vec['path']])
self.assertEqual(gxp_res['xpub'], path_vec['xpub'])

def test_expert_getxpub(self):
result = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:21324', '--expert', 'getxpub', 'm/44h/0h/0h/3'])
result = self.do_command(['-t', 'keepkey', '-d', 'udp:127.0.0.1:11044', '--expert', 'getxpub', 'm/44h/0h/0h/3'])
self.assertEqual(result['xpub'], 'xpub6FMafWAi3n3ET2rU5yQr16UhRD1Zx4dELmcEw3NaYeBaNnipcr2zjzYp1sNdwR3aTN37hxAqRWQ13AWUZr6L9jc617mU6EvgYXyBjXrEhgr')
self.assertFalse(result['testnet'])
self.assertFalse(result['private'])
Expand All @@ -169,7 +169,7 @@ def test_expert_getxpub(self):
class TestKeepkeyManCommands(KeepkeyTestCase):
def setUp(self):
self.client = self.emulator.start()
self.dev_args = ['-t', 'keepkey', '-d', 'udp:127.0.0.1:21324']
self.dev_args = ['-t', 'keepkey', '-d', 'udp:127.0.0.1:11044']

def test_setup_wipe(self):
# Device is init, setup should fail
Expand All @@ -182,7 +182,7 @@ def test_setup_wipe(self):
self.assertTrue(result['success'])

# Setup
t_client = KeepkeyClient('udp:127.0.0.1:21324', 'test')
t_client = KeepkeyClient('udp:127.0.0.1:11044', 'test')
t_client.client.ui.get_pin = MethodType(get_pin, t_client.client.ui)
t_client.client.ui.pin = '1234'
result = t_client.setup_device()
Expand Down Expand Up @@ -210,7 +210,7 @@ def test_pins(self):
self.assertEqual(result['code'], -11)
result = self.do_command(self.dev_args + ['enumerate'])
for dev in result:
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_pin_sent'])

# Set a PIN
Expand All @@ -219,7 +219,7 @@ def test_pins(self):
self.client.call(messages.LockDevice())
result = self.do_command(self.dev_args + ['enumerate'])
for dev in result:
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertTrue(dev['needs_pin_sent'])
result = self.do_command(self.dev_args + ['promptpin'])
self.assertTrue(result['success'])
Expand Down Expand Up @@ -250,7 +250,7 @@ def test_pins(self):

result = self.do_command(self.dev_args + ['enumerate'])
for dev in result:
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'trezor' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_pin_sent'])

# Sending PIN after unlock
Expand All @@ -268,25 +268,25 @@ def test_passphrase(self):
# A passphrase will need to be sent
result = self.do_command(self.dev_args + ['enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertTrue(dev['needs_passphrase_sent'])
result = self.do_command(self.dev_args + ['-p', 'pass', 'enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_passphrase_sent'])
fpr = dev['fingerprint']
# A different passphrase will change the fingerprint
result = self.do_command(self.dev_args + ['-p', 'pass2', 'enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_passphrase_sent'])
self.assertNotEqual(dev['fingerprint'], fpr)

# Clearing the session and starting a new one with a new passphrase should change the passphrase
self.client.call(messages.LockDevice())
result = self.do_command(self.dev_args + ['-p', 'pass3', 'enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_passphrase_sent'])
self.assertNotEqual(dev['fingerprint'], fpr)

Expand All @@ -296,13 +296,13 @@ def test_passphrase(self):
# There's no passphrase
result = self.do_command(self.dev_args + ['enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_passphrase_sent'])
self.assertEquals(dev['fingerprint'], '95d8f670')
# Setting a passphrase won't change the fingerprint
result = self.do_command(self.dev_args + ['-p', 'pass', 'enumerate'])
for dev in result:
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:21324':
if dev['type'] == 'keepkey' and dev['path'] == 'udp:127.0.0.1:11044':
self.assertFalse(dev['needs_passphrase_sent'])
self.assertEquals(dev['fingerprint'], '95d8f670')

Expand All @@ -313,7 +313,7 @@ def keepkey_test_suite(emulator, rpc, userpass, interface):
# Device info for tests
type = 'keepkey'
full_type = 'keepkey'
path = 'udp:127.0.0.1:21324'
path = 'udp:127.0.0.1:11044'
fingerprint = '95d8f670'
master_xpub = 'xpub6D1weXBcFAo8CqBbpP4TbH5sxQH8ZkqC5pDEvJ95rNNBZC9zrKmZP2fXMuve7ZRBe18pWQQsGg68jkq24mZchHwYENd8cCiSb71u3KD4AFH'
dev_emulator = KeepkeyEmulator(emulator)
Expand Down

0 comments on commit 61cacc8

Please sign in to comment.