changeset 6fc65191e784 in modules/ldap_authentication:default details: https://hg.tryton.org/modules/ldap_authentication?cmd=changeset;node=6fc65191e784 description: Avoid resource warning by explicitly closing connection
issue8682 review255951002 diffstat: res.py | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) diffs (35 lines): diff -r 1c4020447335 -r 6fc65191e784 res.py --- a/res.py Fri Aug 09 16:35:37 2019 +0200 +++ b/res.py Tue Oct 08 18:06:14 2019 +0200 @@ -140,18 +140,18 @@ users = cls.ldap_search_user(login, server, attrs=[uid]) if users and len(users) == 1: [(dn, attrs)] = users - con = ldap3.Connection(server, dn, password) - if (password and con.bind()): - # Use ldap uid so we always get the right case - login = attrs.get(uid, [login])[0] - user_id = cls._get_login(login)[0] - if user_id: - return user_id - elif config.getboolean(section, 'create_user'): - user, = cls.create([{ - 'name': login, - 'login': login, - }]) - return user.id + with ldap3.Connection(server, dn, password) as con: + if (password and con.bind()): + # Use ldap uid so we always get the right case + login = attrs.get(uid, [login])[0] + user_id = cls._get_login(login)[0] + if user_id: + return user_id + elif config.getboolean(section, 'create_user'): + user, = cls.create([{ + 'name': login, + 'login': login, + }]) + return user.id except LDAPException: logger.error('LDAPError when login', exc_info=True)