From babf58e2dd0e88f86266c87e8a3bd6320a43764f Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 20 Nov 2025 12:42:45 +0100 Subject: [PATCH] build.lib.cmds.SSHClient: Finish __init_askpass() Finish and test the __init_askpass() method, works. __init_askpass() had never been tested. Finish it and make sure it works. Signed-off-by: Jan Lindemann --- src/python/jw/build/lib/SSHClient.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/python/jw/build/lib/SSHClient.py b/src/python/jw/build/lib/SSHClient.py index 812cc850..78edd991 100644 --- a/src/python/jw/build/lib/SSHClient.py +++ b/src/python/jw/build/lib/SSHClient.py @@ -82,18 +82,16 @@ class SSHClientCmd(SSHClient): # export def __init_askpass(self): if self.__askpass is None and self.password is not None: - import tempfile - print(self.password) - raise Exception('Huhu') + import sys, tempfile prefix = os.path.basename(sys.argv[0]) + '-' - f = NamedTemporaryFile(mode='w+t', prefix=prefix, delete=False) - os.chmod(self.__askpass, 0o0700) + f = tempfile.NamedTemporaryFile(mode='w+t', prefix=prefix, delete=False) + os.chmod(f.name, 0o0700) self.__askpass = f.name f.write(f'#!/bin/bash\n\necho -n "{self.password}\n"') f.close() - for key, val in {'SSH_ASKPASS': self.__askpass, 'SSH_ASKPASS_REQUIRE': 'force'}: + for key, val in {'SSH_ASKPASS': self.__askpass, 'SSH_ASKPASS_REQUIRE': 'force'}.items(): self.__askpass_orig[key] = os.getenv(key) - os.setenv(key, val) + os.environ[key] = val def run_cmd(self, cmd: str): self.__init_askpass()