native askpass should be used when requested

This commit is contained in:
Kovid Goyal 2022-03-15 15:54:48 +05:30
parent daa673eff1
commit c47e5372b5
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -573,11 +573,11 @@ def run_ssh(ssh_args: List[str], server_args: List[str], found_extra_args: Tuple
use_kitty_askpass = host_opts.askpass == 'native' or (host_opts.askpass == 'unless-set' and 'SSH_ASKPASS' not in os.environ)
need_to_request_data = True
if use_kitty_askpass:
# SSH_ASKPASS_REQUIRE was introduced in 8.4 release on 2020-09-27
if os.environ.get('DISPLAY') or ssh_version() >= (8, 4):
# SSH_ASKPASS_REQUIRE was introduced in 8.4 release on 2020-09-27
need_to_request_data = False
os.environ['SSH_ASKPASS_REQUIRE'] = 'force'
os.environ['SSH_ASKPASS'] = os.path.join(shell_integration_dir, 'ssh', 'askpass.py')
os.environ['SSH_ASKPASS'] = os.path.join(shell_integration_dir, 'ssh', 'askpass.py')
with restore_terminal_state() as echo_on:
rcmd, replacements, shm_name = get_remote_command(
remote_args, host_opts, hostname, hostname_for_match, uname, echo_on, request_data=need_to_request_data)