Univention Bugzilla – Bug 53807
TypeError: 'in <string>' requires string as left operand, not int
Last modified: 2022-07-27 15:49:39 CEST
Searching for 'sambaLogonHours' via UMC raises: Request: udm/nav/object/query (navigation) Traceback (most recent call last): File "/usr/lib/python3/dist-packages/notifier/threads.py", line 80, in _run result = self._function() File "/usr/lib/python3/dist-packages/notifier/__init__.py", line 105, in __call__ return self._function(*tmp, **self._kwargs) File "/usr/lib/python3/dist-packages/univention/management/console/modules/udm/__init__.py", line 607, in _thread result = module.search(container, objectProperty, objectPropertyValue, superordinate, scope=scope, hidden=hidden) File "/usr/lib/python3/dist-packages/univention/management/console/modules/udm/udm_ldap.py", line 685, in search result = self.module.lookup(None, ldap_connection, filter_s, base=container, superordinate=superordinate, scope=scope, sizelimit=sizelimit, **kwargs) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1773, in lookup filter_s = cls.lookup_filter(filter_s, lo) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1804, in lookup_filter filter_p.append_unmapped_filter_string(filter_s, cls.rewrite_filter, module.mapping) File "/usr/lib/python3/dist-packages/univention/admin/filter.py", line 124, in append_unmapped_filter_string walk(filter_p, rewrite_function, arg=mapping) File "/usr/lib/python3/dist-packages/univention/admin/filter.py", line 308, in walk walk(e, expression_walk_function, conjunction_walk_function, arg) File "/usr/lib/python3/dist-packages/univention/admin/filter.py", line 313, in walk expression_walk_function(filter_p, arg) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 2348, in rewrite_filter super(object, cls).rewrite_filter(filter, mapping) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1867, in rewrite_filter filter.value = mapping.mapValueDecoded(key, filter.value) File "/usr/lib/python3/dist-packages/univention/admin/mapping.py", line 559, in mapValueDecoded value = self.mapValue(map_name, value) File "/usr/lib/python3/dist-packages/univention/admin/mapping.py", line 553, in mapValue value = map_value(value, **kwargs) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 895, in logonHoursMap bitstring = ''.join(map(lambda x: x in logontimes and '1' or '0', range(168))) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 895, in <lambda> bitstring = ''.join(map(lambda x: x in logontimes and '1' or '0', range(168))) TypeError: 'in <string>' requires string as left operand, not int Internal issue, as the property is flagged as "dontsearch".
CLI: udm users/user list --filter=sambaLogonHours=131 Traceback (most recent call last): File "/usr/share/univention-directory-manager-tools/univention-cli-server", line 213, in doit output = univention.admincli.admin.doit(arglist) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 380, in doit out = _doit(arglist) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 657, in _doit out.extend(cli.list(list_policies, filter, superordinate_dn, policyOptions, policies_with_DN)) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 689, in list return self._list(self.module_name, self.module, self.dn, self.lo, self.position, self.superordinate, *args, **kwargs) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 951, in _list for object in univention.admin.modules.lookup(module, None, lo, scope='sub', superordinate=superordinate, base=position.getDn(), filter=filter): File "/usr/lib/python3/dist-packages/univention/admin/modules.py", line 953, in lookup tmpres = module.lookup(co, lo, filter, base=base, superordinate=superordinate, scope=scope, unique=unique, required=required, timeout=timeout, sizelimit=sizelimit) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1773, in lookup filter_s = cls.lookup_filter(filter_s, lo) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1804, in lookup_filter filter_p.append_unmapped_filter_string(filter_s, cls.rewrite_filter, module.mapping) File "/usr/lib/python3/dist-packages/univention/admin/filter.py", line 124, in append_unmapped_filter_string walk(filter_p, rewrite_function, arg=mapping) File "/usr/lib/python3/dist-packages/univention/admin/filter.py", line 313, in walk expression_walk_function(filter_p, arg) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 2348, in rewrite_filter super(object, cls).rewrite_filter(filter, mapping) File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 1867, in rewrite_filter filter.value = mapping.mapValueDecoded(key, filter.value) File "/usr/lib/python3/dist-packages/univention/admin/mapping.py", line 559, in mapValueDecoded value = self.mapValue(map_name, value) File "/usr/lib/python3/dist-packages/univention/admin/mapping.py", line 553, in mapValue value = map_value(value, **kwargs) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 895, in logonHoursMap bitstring = ''.join(map(lambda x: x in logontimes and '1' or '0', range(168))) File "/usr/lib/python3/dist-packages/univention/admin/handlers/users/user.py", line 895, in <lambda> bitstring = ''.join(map(lambda x: x in logontimes and '1' or '0', range(168))) TypeError: 'in <string>' requires string as left operand, not int
Patch: https://git.knut.univention.de/univention/ucs/-/commit/a7f59df9accc9c461fe1b1959b4a0e8071d76bf3