summaryrefslogtreecommitdiff
path: root/src/op_mode/generate_public_key_command.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2022-03-22 04:50:34 -0400
committerViacheslav Hletenko <v.gletenko@vyos.io>2022-06-30 07:47:54 +0000
commit4e6dbe819241dbf343a687bd98ab29749e75813b (patch)
treefd7e4777cb3fb185083b3d3b0ba68c20a90128c9 /src/op_mode/generate_public_key_command.py
parentcd055ce723e0c993c786d44dd5f988aeb961cd39 (diff)
downloadvyos-1x-4e6dbe819241dbf343a687bd98ab29749e75813b.tar.gz
vyos-1x-4e6dbe819241dbf343a687bd98ab29749e75813b.zip
T4313: handle exceptions in the "generate public-key-command" script
(cherry picked from commit c37829f1e902b84a5bc3bc5618ee97ae1ba0dd86)
Diffstat (limited to 'src/op_mode/generate_public_key_command.py')
-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')
+