summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2023-03-02 09:40:00 -0600
committerJohn Estabrook <jestabro@vyos.io>2023-03-02 10:09:45 -0600
commitcb177e0ab0efed4dd82bf57138ba64edaa650271 (patch)
tree32f8f307f084442966af2b4507fd38e7ba937aae
parent157ac088a57fcccd9f7e8298ba87b3f29658af31 (diff)
downloadvyos-1x-cb177e0ab0efed4dd82bf57138ba64edaa650271.tar.gz
vyos-1x-cb177e0ab0efed4dd82bf57138ba64edaa650271.zip
login: T5039: catch error on 'my_set' for auth plaintext-password
-rwxr-xr-xsrc/conf_mode/system-login.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/conf_mode/system-login.py b/src/conf_mode/system-login.py
index 0a4a88bf8..d15fe399d 100755
--- a/src/conf_mode/system-login.py
+++ b/src/conf_mode/system-login.py
@@ -30,7 +30,7 @@ from vyos.defaults import directories
from vyos.template import render
from vyos.template import is_ipv4
from vyos.util import cmd
-from vyos.util import call
+from vyos.util import call, rc_cmd
from vyos.util import run
from vyos.util import DEVNULL
from vyos.util import dict_search
@@ -203,7 +203,9 @@ def generate(login):
add_user_encrypt = " ".join(add_user_encrypt)
call(f"/opt/vyatta/sbin/my_delete {del_user_plain}", env=env)
- call(f"/opt/vyatta/sbin/my_set {add_user_encrypt}", env=env)
+ ret, out = rc_cmd(f"/opt/vyatta/sbin/my_set {add_user_encrypt}", env=env)
+ if ret:
+ raise ConfigError(out)
else:
try:
if get_shadow_password(user) == dict_search('authentication.encrypted_password', user_config):