diff options
Diffstat (limited to 'ipa-server/xmlrpc-server/ipaxmlrpc.py')
-rw-r--r-- | ipa-server/xmlrpc-server/ipaxmlrpc.py | 6 |
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 |