Univention Bugzilla – Bug 39599
UMC response without 'result' leads to KeyError exception
Last modified: 2015-12-15 11:02:06 CET
A successful UMC call (eg to change a users password) can return no result, which leads to a KeyError when the request should be returned. url = "" data = {"password": {"password": oldpassword, "new_password": newpassword}} command='set' [..] File "/usr/lib/pymodules/python2.7/univention/selfservice/frontend.py", line 109, in umc_request result = connection.request(url, data, command=command) File "/usr/lib/pymodules/python2.7/univention/lib/umc_connection.py", line 143, in request return loads(content)['result'] KeyError: 'result' Fix: Index: base/univention-lib/python/umc_connection.py =================================================================== --- base/univention-lib/python/umc_connection.py (Revision 64615) +++ base/univention-lib/python/umc_connection.py (Arbeitskopie) @@ -140,4 +140,4 @@ raise NotImplementedError('command forbidden: %s' % url) raise HTTPException(error_message) content = response.read() - return loads(content)['result'] + return loads(content).get('result')
Fixed, svn r64642
OK: Code review OK: Manual functional test OK: Changelog (64676) entry
UCS 4.1 has been released: https://docs.software-univention.de/release-notes-4.1-0-en.html https://docs.software-univention.de/release-notes-4.1-0-de.html If this error occurs again, please use "Clone This Bug".