View | Details | Raw Unified | Return to bug 54317
Collapse All | Expand All

(-)management/univention-directory-manager-modules/modules/univention/admin/handlers/users/user.py (-2 / +2 lines)
 Lines 1978-1984   class object(univention.admin.handlers.simpleLdap): Link Here 
1978
1974
1979
	# If you change anything here, please also check users/ldap.py
1975
	# If you change anything here, please also check users/ldap.py
1980
	def _modlist_posix_password(self, ml):
1976
	def _modlist_posix_password(self, ml):
1981
		if not self.exists() or self.hasChanged(['disabled', 'password']):
1977
		if not self.exists() or self.hasChanged(['disabled', 'password', 'locked']):
1982
			old_password = self.oldattr.get('userPassword', [''])[0]
1978
			old_password = self.oldattr.get('userPassword', [''])[0]
1983
			password = self['password']
1979
			password = self['password']
1984
1980
 Lines 1991-1997   class object(univention.admin.handlers.simpleLdap): Link Here 
1991
				password = old_password
1987
				password = old_password
1992
1988
1993
			password_hash = univention.admin.password.lock_password(password)
1989
			password_hash = univention.admin.password.lock_password(password)
1994
			if self['disabled'] != '1':
1990
			if self['disabled'] != '1' and self['locked'] != '1':
1995
				password_hash = univention.admin.password.unlock_password(password_hash)
1991
				password_hash = univention.admin.password.unlock_password(password_hash)
1996
			ml.append(('userPassword', old_password, password_hash))
1992
			ml.append(('userPassword', old_password, password_hash))
1997
		return ml
1993
		return ml

Return to bug 54317