diff options
| author | Christian Poessinger <christian@poessinger.com> | 2020-04-07 08:27:36 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-07 08:27:36 +0200 | 
| commit | 09ad28b28c9ebd9308cfe9048686b3b0ef9cfd9c (patch) | |
| tree | 6e7b0971ecd8859cff864b3ebb37f86f8ba288f5 /python/vyos/remote.py | |
| parent | e0f13b79a669e7fc8cadac8757b2f5fbbf51dc99 (diff) | |
| parent | 7256810914e6664bf92041dcd7c3daf649ce0001 (diff) | |
| download | vyos-1x-09ad28b28c9ebd9308cfe9048686b3b0ef9cfd9c.tar.gz vyos-1x-09ad28b28c9ebd9308cfe9048686b3b0ef9cfd9c.zip  | |
Merge pull request #307 from thomas-mangin/T2226
util: T2226: convert all call to use vyos.util.{popen, cmd, run}
Diffstat (limited to 'python/vyos/remote.py')
| -rw-r--r-- | python/vyos/remote.py | 29 | 
1 files changed, 11 insertions, 18 deletions
diff --git a/python/vyos/remote.py b/python/vyos/remote.py index f8a21f068..f0bf41cd4 100644 --- a/python/vyos/remote.py +++ b/python/vyos/remote.py @@ -17,7 +17,8 @@ import sys  import os  import re  import fileinput -import subprocess + +from vyos.util import cmd, DEVNULL  def check_and_add_host_key(host_name): @@ -33,10 +34,8 @@ def check_and_add_host_key(host_name):      keyscan_cmd = 'ssh-keyscan -t rsa {} 2>/dev/null'.format(host_name)      try: -        host_key = subprocess.check_output(keyscan_cmd, shell=True, -                                         stderr=subprocess.DEVNULL, -                                         universal_newlines=True) -    except subprocess.CalledProcessError as err: +        host_key = cmd(keyscan_cmd, stderr=DEVNULL, universal_newlines=True) +    except OSError:          sys.exit("Can not get RSA host key")      # libssh2 (jessie; stretch) does not recognize ec host keys, and curl @@ -64,10 +63,8 @@ def check_and_add_host_key(host_name):      fingerprint_cmd = 'ssh-keygen -lf /dev/stdin <<< "{}"'.format(host_key)      try: -        fingerprint = subprocess.check_output(fingerprint_cmd, shell=True, -                                         stderr=subprocess.DEVNULL, -                                         universal_newlines=True) -    except subprocess.CalledProcessError as err: +        fingerprint = cmd(fingerprint_cmd, stderr=DEVNULL, universal_newlines=True) +    except OSError:          sys.exit("Can not get RSA host key fingerprint.")      print("RSA host key fingerprint is {}".format(fingerprint.split()[1])) @@ -128,9 +125,8 @@ def get_remote_config(remote_file):          # Try header first, and look for 'OK' or 'Moved' codes:          curl_cmd = 'curl {0} -q -I {1}'.format(redirect_opt, remote_file)          try: -            curl_output = subprocess.check_output(curl_cmd, shell=True, -                                                  universal_newlines=True) -        except subprocess.CalledProcessError: +            curl_output = cmd(curl_cmd, shell=True, universal_newlines=True) +        except OSError:              sys.exit(1)          return_vals = re.findall(r'^HTTP\/\d+\.?\d\s+(\d+)\s+(.*)$', @@ -146,9 +142,6 @@ def get_remote_config(remote_file):          curl_cmd = 'curl {0} -# {1}'.format(redirect_opt, remote_file)      try: -        config_file = subprocess.check_output(curl_cmd, shell=True, -                                        universal_newlines=True) -    except subprocess.CalledProcessError: -        config_file = None - -    return config_file +        return cmd(curl_cmd, universal_newlines=True) +    except OSError: +        return None  | 
