Douglas Schilling Landgraf has uploaded a new change for review. Change subject: password: Replace setpassUser and update the persist/unpersist calls ......................................................................
password: Replace setpassUser and update the persist/unpersist calls Workaround for admin.setpassUser not working properly with persist command during upgrades/reinstall or downgrade. Additionally, updated the persist/unpersist calls for the new module Config. Change-Id: Ie8a1b3fe1343e6820e83e2a9db8ff6715d959336 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1263648 Signed-off-by: Douglas Schilling Landgraf <[email protected]> --- M src/ovirtnode/password.py 1 file changed, 24 insertions(+), 5 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-node refs/changes/16/48216/1 diff --git a/src/ovirtnode/password.py b/src/ovirtnode/password.py index 53614bb..3cf7d00 100755 --- a/src/ovirtnode/password.py +++ b/src/ovirtnode/password.py @@ -24,6 +24,7 @@ import string import augeas +from ovirt.node.utils.fs import Config def cryptPassword(password): saltlen = 2 @@ -39,15 +40,33 @@ admin = libuser.admin() root = admin.lookupUserByName(user) passwd = cryptPassword(password) + try: - _functions.unmount_config("/etc/shadow") - _functions.unmount_config("/etc/passwd") - admin.setpassUser(root, passwd, "is_crypted") + Config().unpersist("/etc/passwd") + + # Workaround for admin.setpassUser not working properly + # with persist command during upgrades/reinstall or downgrade + # See more: BZ#1263648 + # + with open("/etc/shadow", "r") as f: + shw = f.readlines() + + with open("/etc/shadow", "w") as f: + for line in shw: + if line.split(":")[0] == "admin": + entry = line.split(":") + entry[1] = "{0}".format(passwd) + f.write(':'.join(entry)) + continue + f.write(line) + + # Ends workaround + # admin.setpassUser(root, passwd, "is_crypted") except: raise finally: - _functions.ovirt_store_config("/etc/shadow") - _functions.ovirt_store_config("/etc/passwd") + Config().persist("/etc/shadow") + return True -- To view, visit https://gerrit.ovirt.org/48216 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie8a1b3fe1343e6820e83e2a9db8ff6715d959336 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-node Gerrit-Branch: master Gerrit-Owner: Douglas Schilling Landgraf <[email protected]> _______________________________________________ node-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/node-patches
