|
|
|
@ -165,17 +165,8 @@ class VariableClMigrateRootPwdPlain(GrubHelper, UserHelper, Variable):
|
|
|
|
|
self.label = _("Root password")
|
|
|
|
|
|
|
|
|
|
def check(self, value):
|
|
|
|
|
#raise VariableError(self.Get('cl_migrate_root_shadow_pwd'))
|
|
|
|
|
#raise VariableError(value)
|
|
|
|
|
if not value and not self.Get('cl_migrate_root_shadow_pwd'):
|
|
|
|
|
raise PasswordError(_("Enter password for user %s") % "root")
|
|
|
|
|
if value != self.stub_hash_value:
|
|
|
|
|
if not all([len(value) > 7,
|
|
|
|
|
any([x.isupper() for x in value]),
|
|
|
|
|
any([x.islower() for x in value]),
|
|
|
|
|
any([x.isdigit() for x in value])]):
|
|
|
|
|
raise VariableError(
|
|
|
|
|
_("Password should contain at least 8 symbols, 1 uppercase letter, 1 lowercase letter, 1 digit"))
|
|
|
|
|
# если plain пароля нет (есть только хэш), но требуется установить
|
|
|
|
|
# пароль на grub (cl_grub_passwd_set), при этом нет 07_passwd
|
|
|
|
|
if (value == self.stub_hash_value and
|
|
|
|
@ -561,15 +552,6 @@ class VariableClMigrateUserPwd(UserHelper, Variable):
|
|
|
|
|
"""
|
|
|
|
|
Encrypt passwords
|
|
|
|
|
"""
|
|
|
|
|
for pas in value:
|
|
|
|
|
if pas == 'guest':
|
|
|
|
|
pass
|
|
|
|
|
if not all([len(pas) > 7,
|
|
|
|
|
any([x.isupper() for x in pas]),
|
|
|
|
|
any([x.islower() for x in pas]),
|
|
|
|
|
any([x.isdigit() for x in pas])]):
|
|
|
|
|
raise VariableError(
|
|
|
|
|
_("Password should contain at least 8 symbols, 1 uppercase letter, 1 lowercase letter, 1 digit"))
|
|
|
|
|
shadow_hash = get_shadow_hash()
|
|
|
|
|
|
|
|
|
|
return [x if shadow_hash.identify(x) or not x else shadow_hash.hash(x) for x in value]
|
|
|
|
|