From a5b7e3f56b8a3bddfafa1811061cd146f7c818e1 Mon Sep 17 00:00:00 2001 From: "rcritten@redhat.com" Date: Mon, 27 Aug 2007 13:45:28 -0400 Subject: Include any LDAP error strings in XML-RPC Fault exceptions Put a try/except around attempts to determine user uniqueness --- ipa-server/xmlrpc-server/ipaxmlrpc.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ipa-server/xmlrpc-server/ipaxmlrpc.py') diff --git a/ipa-server/xmlrpc-server/ipaxmlrpc.py b/ipa-server/xmlrpc-server/ipaxmlrpc.py index 3f30f8fb..32a7e808 100644 --- a/ipa-server/xmlrpc-server/ipaxmlrpc.py +++ b/ipa-server/xmlrpc-server/ipaxmlrpc.py @@ -36,6 +36,7 @@ from mod_python import apache import ipaserver import funcs from ipa import ipaerror +import ldap import string import base64 @@ -150,7 +151,12 @@ class ModXMLRPCRequestHandler(object): response = dumps(response, methodresponse=1, allow_none=1) except ipaerror.IPAError, e: self.traceback = True - response = dumps(Fault(e.code, str(e))) + + if (isinstance(e.detail, ldap.LDAPError)): +u err = ": %s: %s" % (e.detail.args[0]['desc'], e.detail.args[0].get('info','')) + response = dumps(Fault(e.code, str(e) + err)) + else: + response = dumps(Fault(e.code, str(e))) except: self.traceback = True # report exception back to server -- cgit