From 525c77c2ce93587b8a8391ea08d854bc1e0c2f69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre-Elliott=20B=C3=A9cue?= Date: Tue, 1 Dec 2015 02:31:19 +0100 Subject: [PATCH] =?UTF-8?q?Corrige=20la=20v=C3=A9rification=20des=20droits?= =?UTF-8?q?=20en=20cas=20de=20no=5Fcracklib?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ldap n'était pas défini à l'endroit du test --- gestion/chgpass.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gestion/chgpass.py b/gestion/chgpass.py index d5a109e9..fbc739a4 100755 --- a/gestion/chgpass.py +++ b/gestion/chgpass.py @@ -125,10 +125,17 @@ def change_password(ldap, login=None, verbose=False, no_cracklib=False, **args): """ if login is None: login = current_user + if type(login) == str: login = login.decode(config.in_encoding) + + if no_cracklib: + if not lc_ldap.attributs.nounou in ldap.droits: + no_cracklib = False + login = lc_ldap.crans_utils.escape(login) query = ldap.search(u"(uid=%s)" % login, mode="w") + if not query: affich_tools.cprint('Utilisateur introuvable dans la base de données, modification de l\'utilisateur local.', "rouge") sys.exit(2) @@ -249,7 +256,4 @@ if __name__ == "__main__": if args.help: parser.print_help() sys.exit(0) - if args.no_cracklib: - if not lc_ldap.attributs.nounou in ldap.droits: - args.no_cracklib = False change_password(**vars(args))