summaryrefslogtreecommitdiffstats
path: root/ipa-server
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2007-11-09 14:55:41 -0500
committerRob Crittenden <rcritten@redhat.com>2007-11-09 14:55:41 -0500
commitd9194cdd098f24f85443cda3dbda730172d6234a (patch)
tree53a675244e3353c9cfb584e47eaa3fe44bcbcbd0 /ipa-server
parentb7506a5ea68a694932053a75ca9287dfb4fb1516 (diff)
downloadfreeipa-d9194cdd098f24f85443cda3dbda730172d6234a.tar.gz
freeipa-d9194cdd098f24f85443cda3dbda730172d6234a.tar.xz
freeipa-d9194cdd098f24f85443cda3dbda730172d6234a.zip
Don't continue if a kerberos credentials cache is not available
forked-model detection was incorrect. Both of these return an error instead of raising one
Diffstat (limited to 'ipa-server')
-rw-r--r--ipa-server/xmlrpc-server/ipaxmlrpc.py16
1 files changed, 8 insertions, 8 deletions
diff --git a/ipa-server/xmlrpc-server/ipaxmlrpc.py b/ipa-server/xmlrpc-server/ipaxmlrpc.py
index 6aaad1170..86f5fda02 100644
--- a/ipa-server/xmlrpc-server/ipaxmlrpc.py
+++ b/ipa-server/xmlrpc-server/ipaxmlrpc.py
@@ -141,8 +141,8 @@ class ModXMLRPCRequestHandler(object):
if req.subprocess_env.get("KRB5CCNAME") is not None:
opts['krbccache'] = req.subprocess_env.get("KRB5CCNAME")
else:
- sys.stderr.write("IPA: did not receive a Kerberos credentials cache. Expect problems")
- sys.stderr.flush()
+ response = dumps(Fault(5, "Did not receive Kerberos credentials."))
+ return response
if pythonopts.get("IPADebug"):
opts['ipadebug'] = pythonopts.get("IPADebug")
@@ -277,17 +277,17 @@ class ModXMLRPCRequestHandler(object):
def handle_request(self,req):
"""Handle a single XML-RPC request"""
- # The LDAP connection pool is not thread-safe. Avoid problems and
- # force the forked model for now.
- if not apache.mpm_query(apache.AP_MPMQ_IS_FORKED):
- raise Fault(3, "Apache must use the forked model")
-
# XMLRPC uses POST only. Reject anything else
if req.method != 'POST':
req.allow_methods(['POST'],1)
raise apache.SERVER_RETURN, apache.HTTP_METHOD_NOT_ALLOWED
- response = self._marshaled_dispatch(req.read(), req)
+ # The LDAP connection pool is not thread-safe. Avoid problems and
+ # force the forked model for now.
+ if apache.mpm_query(apache.AP_MPMQ_IS_THREADED):
+ response = dumps(Fault(3, "Apache must use the forked model"))
+ else:
+ response = self._marshaled_dispatch(req.read(), req)
req.content_type = "text/xml"
req.set_content_length(len(response))