From b241e828a9b47a6c706a3ac8378fd6e57b8202fb Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Thu, 23 Feb 2012 17:25:53 -0500 Subject: Catch public exceptions when creating the LDAP context in WSGI. Made specifically for the case where S4U2Proxy delegation fails. https://fedorahosted.org/freeipa/ticket/2414 --- ipaserver/rpcserver.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ipaserver/rpcserver.py') diff --git a/ipaserver/rpcserver.py b/ipaserver/rpcserver.py index 91e525a3..205dc765 100644 --- a/ipaserver/rpcserver.py +++ b/ipaserver/rpcserver.py @@ -317,9 +317,15 @@ class xmlserver(WSGIExecutioner): ''' self.debug('WSGI xmlserver.__call__:') - self.create_context(ccache=environ.get('KRB5CCNAME')) try: + self.create_context(ccache=environ.get('KRB5CCNAME')) response = super(xmlserver, self).__call__(environ, start_response) + except PublicError, e: + status = '200 OK' + response = status + headers = [('Content-Type', 'text/plain')] + start_response(status, headers) + return self.marshal(None, e) finally: destroy_context() return response -- cgit