Univention Bugzilla – Bug 54163
passwordreset/get_reset_methods: RuntimeError: maximum recursion depth exceeded
Last modified: 2021-11-26 15:49:16 CET
Version: 4.4-7 errata901 (Blumenthal) Remark: still broken Error: Internal server error during "passwordreset/get_reset_methods". Request: passwordreset/get_reset_methods Traceback (most recent call last): File "%PY2.7%/univention/management/console/base.py", line 359, in __error_handling six.reraise(etype, exc, etraceback) File "%PY2.7%/univention/management/console/base.py", line 262, in execute function.__func__(self, request, *args, **kwargs) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 102, in _decorator return func(self, request, *args, **kwargs) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 185, in _decorated return func(self, *args, **kwargs) File "%PY2.7%/univention/management/console/modules/decorators.py", line 181, in _response return function(self, request) File "%PY2.7%/univention/management/console/modules/decorators.py", line 321, in _response result = _multi_response(self, request) File "%PY2.7%/univention/management/console/modules/decorators.py", line 181, in _response return function(self, request) File "%PY2.7%/univention/management/console/modules/decorators.py", line 443, in _response return list(function(self, iterator, *nones)) File "%PY2.7%/univention/management/console/modules/decorators.py", line 289, in _fake_func yield function(self, *args) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 903, in get_reset_methods if self.is_blacklisted(username, 'passwordreset'): File "%PY2.7%/univention/management/console/ldap.py", line 152, in _decorated result = func(*args, **kwargs) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 1124, in is_blacklisted groups_dns.extend(self.get_nested_groups(group_dn)) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 1163, in get_nested_groups res.extend(self.get_nested_groups(ng)) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 1163, in get_nested_groups res.extend(self.get_nested_groups(ng)) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 1163, in get_nested_groups res.extend(self.get_nested_groups(ng)) [repeats about 80 times (guess)] File "%PY2.7%/univention/management/console/ldap.py", line 152, in _decorated result = func(*args, **kwargs) File "%PY2.7%/univention/management/console/modules/passwordreset/__init__.py", line 1197, in get_udm_group group = self.groupmod.object(None, ldap_connection, ldap_position, groupdn) File "%PY2.7%/univention/admin/handlers/__init__.py", line 230, in __init__ self.oldattr = self.lo.get(self.dn, attr=attr, required=True) File "%PY2.7%/univention/admin/uldap.py", line 710, in get return self.lo.get(dn, attr, required) File "%PY2.7%/univention/uldap.py", line 207, in _decorated return func(self, *args, **kwargs) File "%PY2.7%/univention/uldap.py", line 438, in get result = self.lo.search_s(dn, ldap.SCOPE_BASE, '(objectClass=*)', attr) File "%PY2.7%/ldap/ldapobject.py", line 597, in search_s return self.search_ext_s(base,scope,filterstr,attrlist,attrsonly,None,None,timeout=self.timeout) File "%PY2.7%/ldap/ldapobject.py", line 993, in search_ext_s return self._apply_method_s(SimpleLDAPObject.search_ext_s,*args,**kwargs) File "%PY2.7%/ldap/ldapobject.py", line 931, in _apply_method_s return func(self,*args,**kwargs) File "%PY2.7%/ldap/ldapobject.py", line 591, in search_ext_s return self.result(msgid,all=1,timeout=timeout)[1] File "%PY2.7%/ldap/ldapobject.py", line 503, in result resp_type, resp_data, resp_msgid = self.result2(msgid,all,timeout) File "%PY2.7%/ldap/ldapobject.py", line 507, in result2 resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all,timeout) File "%PY2.7%/ldap/ldapobject.py", line 514, in result3 resp_ctrl_classes=resp_ctrl_classes File "%PY2.7%/ldap/ldapobject.py", line 521, in result4 ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop) File "%PY2.7%/ldap/ldapobject.py", line 92, in _ldap_call self._ldap_object_lock.acquire() RuntimeError: maximum recursion depth exceeded Role: domaincontroller_master