summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2022-03-22 04:50:34 -0400
committerDaniil Baturin <daniil@vyos.io>2022-03-22 04:50:34 -0400
commitc37829f1e902b84a5bc3bc5618ee97ae1ba0dd86 (patch)
tree79caf7d411aee525e74e9c401d78b9e012b0cd30
parent18483a2f7d18aecb40b2003cec9a9dae6bcfaa24 (diff)
downloadvyos-1x-c37829f1e902b84a5bc3bc5618ee97ae1ba0dd86.tar.gz
vyos-1x-c37829f1e902b84a5bc3bc5618ee97ae1ba0dd86.zip
T4313: handle exceptions in the "generate public-key-command" script
-rwxr-xr-xsrc/op_mode/generate_public_key_command.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/op_mode/generate_public_key_command.py b/src/op_mode/generate_public_key_command.py
index 7a7b6c923..f071ae350 100755
--- a/src/op_mode/generate_public_key_command.py
+++ b/src/op_mode/generate_public_key_command.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
#
-# Copyright (C) 2021 VyOS maintainers and contributors
+# Copyright (C) 2022 VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@@ -29,8 +29,12 @@ def get_key(path):
key_string = vyos.remote.get_remote_config(path)
return key_string.split()
-username = sys.argv[1]
-algorithm, key, identifier = get_key(sys.argv[2])
+try:
+ username = sys.argv[1]
+ algorithm, key, identifier = get_key(sys.argv[2])
+except Exception as e:
+ print("Failed to retrieve the public key: {}".format(e))
+ sys.exit(1)
print('# To add this key as an embedded key, run the following commands:')
print('configure')
@@ -39,3 +43,4 @@ print(f'set system login user {username} authentication public-keys {identifier}
print('commit')
print('save')
print('exit')
+