From f56e5df4f9bd6d28e0b7a855a2a016e5bd5019cb Mon Sep 17 00:00:00 2001 From: Ward Poelmans Date: Thu, 10 Aug 2023 21:32:18 +0200 Subject: [PATCH] fix python3 encoding for ldap attributes --- lib/vsc/ldap/utils.py | 4 ++-- setup.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/vsc/ldap/utils.py b/lib/vsc/ldap/utils.py index d080cdc..6405fe5 100644 --- a/lib/vsc/ldap/utils.py +++ b/lib/vsc/ldap/utils.py @@ -509,8 +509,8 @@ def __modify(self, current, dn, attributes): key, EMPTY_GECOS_DURING_MODIFY, dn) current_[key] = EMPTY_GECOS_DURING_MODIFY # hack to allow replacing empty strings - attributes = {key:[v.encode("utf-8") if type(v) == str else v for v in values] - for key, values in attributes.items()} + if isinstance(attributes[key], list): + attributes[key] = [v.encode("utf-8") if isinstance(v, str) else v for v in values] # [(ldap.MOD_REPLACE, k, v) for (k,v) in attributes.items()] modification_attributes = ldap.modlist.modifyModlist(current_, attributes) diff --git a/setup.py b/setup.py index 538bde0..102c15e 100644 --- a/setup.py +++ b/setup.py @@ -36,14 +36,14 @@ from vsc.install.shared_setup import ag, kh, sdw, wdp, jt PACKAGE = { - 'setup_requires': ['vsc-install >= 0.15.2'], + 'setup_requires': ['vsc-install >= 0.18.8'], 'install_requires': [ 'vsc-base >= 3.0.2', 'vsc-utils >= 2.0.0', 'future >= 0.16.0', 'python-ldap', ], - 'version': '2.2.1', + 'version': '2.2.2' 'author': [ag, kh, sdw, wdp, jt], 'maintainer': [ag], }