From 64064b5ecc6ad0a01c4937483d8a85289c796263 Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Wed, 7 Mar 2018 13:18:48 +0200 Subject: [PATCH] ssh: use pinentry UI --- libagent/ssh/__init__.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libagent/ssh/__init__.py b/libagent/ssh/__init__.py index e378533..c264d92 100644 --- a/libagent/ssh/__init__.py +++ b/libagent/ssh/__init__.py @@ -85,6 +85,11 @@ def create_agent_parser(device_type): p.add_argument('--sock-path', type=str, help='Path to the UNIX domain socket of the agent.') + p.add_argument('--pin-entry-binary', type=str, default='pinentry', + help='Path to PIN entry UI helper.') + p.add_argument('--passphrase-entry-binary', type=str, default='pinentry', + help='Path to passphrase entry UI helper.') + g = p.add_mutually_exclusive_group() g.add_argument('-d', '--daemonize', default=False, action='store_true', help='Daemonize the agent and print its UNIX socket path') @@ -267,6 +272,9 @@ def main(device_type): command = os.environ['SHELL'] sys.stdin.close() + # override default PIN/passphrase entry tools (relevant for TREZOR/Keepkey): + device_type.ui = device.ui.UI.from_config_dict(vars(args)) + conn = JustInTimeConnection( conn_factory=lambda: client.Client(device_type()), identities=identities, public_keys=public_keys)