From ac397f0841b9733470545019ac22bedb91d80afc Mon Sep 17 00:00:00 2001 From: Daniel STAN Date: Fri, 4 Jan 2019 16:44:28 +0100 Subject: [PATCH] [ssh_key] better quickly delete private temp key --- client.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/client.py b/client.py index c679377..8d00756 100755 --- a/client.py +++ b/client.py @@ -716,20 +716,18 @@ def show_file(options): key_file.write(texte.encode('utf-8')) key_file.flush() pub = subprocess.check_output(['ssh-keygen', '-y', '-f', key_file.name]) - # Charge en mémoire subprocess.check_call(['ssh-add', key_file.name]) - # On attend - print(shown.encode('utf-8')) - raw_input() + # On attend (hors tmpfile) + print(shown.encode('utf-8')) + raw_input() + with tempfile.NamedTemporaryFile(suffix='') as pub_file: + # On met la clé publique en fichier pour suppression + pub_file.write(pub) + pub_file.flush() - # On met la clé publique en fichier puis on supprime - key_file.seek(0) - key_file.write(pub) - key_file.flush() - - subprocess.check_call(['ssh-add', '-d', key_file.name]) + subprocess.check_call(['ssh-add', '-d', pub_file.name]) else: # Le binaire à utiliser showbin = "cat" if is_hidden else "less"