summaryrefslogtreecommitdiffstats
path: root/ipa-server/xmlrpc-server/ipaxmlrpc.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipa-server/xmlrpc-server/ipaxmlrpc.py')
-rw-r--r--ipa-server/xmlrpc-server/ipaxmlrpc.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/ipa-server/xmlrpc-server/ipaxmlrpc.py b/ipa-server/xmlrpc-server/ipaxmlrpc.py
index 963117f0..7d8529d2 100644
--- a/ipa-server/xmlrpc-server/ipaxmlrpc.py
+++ b/ipa-server/xmlrpc-server/ipaxmlrpc.py
@@ -239,6 +239,11 @@ 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)
@@ -279,6 +284,7 @@ def handler(req, profiling=False):
h.register_function(f.get_add_schema)
h.register_function(f.get_all_users)
h.register_function(f.find_users)
+ h.register_function(f.update_user)
h.handle_request(req)
finally:
pass