From 7abd383656b81f76a853edc6ff5de3de8f62748b Mon Sep 17 00:00:00 2001 From: Usman Nasir Date: Sun, 25 Aug 2019 14:06:28 +0500 Subject: [PATCH] Bug fix: dont update email passwords on upgrade if crypt detected --- plogical/upgrade.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/plogical/upgrade.py b/plogical/upgrade.py index 324660013..20db01bff 100755 --- a/plogical/upgrade.py +++ b/plogical/upgrade.py @@ -1583,11 +1583,13 @@ enabled=1""" writeToFile.close() - if updatePasswords: - for items in EUsers.objects.all(): - command = 'doveadm pw -p %s' % (items.password) - items.password = subprocess.check_output(shlex.split(command)).strip('\n') - items.save() + Upgrade.stdOut("Upgrading passwords...") + for items in EUsers.objects.all(): + if items.password.find('CRYPT') > -1: + continue + command = 'doveadm pw -p %s' % (items.password) + items.password = subprocess.check_output(shlex.split(command)).strip('\n') + items.save() command = "systemctl restart dovecot" Upgrade.executioner(command, 0) @@ -1642,12 +1644,14 @@ enabled=1""" writeToFile.close() - if updatePasswords: - Upgrade.stdOut("Upgrading passwords...") - for items in EUsers.objects.all(): - command = 'doveadm pw -p %s' % (items.password) - items.password = subprocess.check_output(shlex.split(command)).strip('\n') - items.save() + Upgrade.stdOut("Upgrading passwords...") + for items in EUsers.objects.all(): + if items.password.find('CRYPT') > -1: + continue + command = 'doveadm pw -p %s' % (items.password) + items.password = subprocess.check_output(shlex.split(command)).strip('\n') + items.save() + command = "systemctl restart dovecot" Upgrade.executioner(command, 0)