mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
* Output XmlRpc error message if user server gets a fault response from the region server on login
* This will make it more obvious if one accidentally starts one's region server in standalone rather than grid mode but then tries to login to a grid (as I am wont to do) * We are now sending back a fault code (-32601) if no xmlrpc method is found rather than an ordinary message
This commit is contained in:
@@ -230,6 +230,13 @@ namespace OpenSim.Framework.Servers
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Try all the registered xmlrpc handlers when an xmlrpc request is received.
|
||||
/// Sends back an XMLRPC unknown request response if no handler is registered for the requested method.
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="response"></param>
|
||||
private void HandleXmlRpcRequests(HttpListenerRequest request, HttpListenerResponse response)
|
||||
{
|
||||
Stream requestStream = request.InputStream;
|
||||
@@ -268,12 +275,8 @@ namespace OpenSim.Framework.Servers
|
||||
else
|
||||
{
|
||||
xmlRpcResponse = new XmlRpcResponse();
|
||||
Hashtable unknownMethodError = new Hashtable();
|
||||
unknownMethodError["reason"] = "XmlRequest";
|
||||
;
|
||||
unknownMethodError["message"] = "Unknown Rpc Request [" + methodName + "]";
|
||||
unknownMethodError["login"] = "false";
|
||||
xmlRpcResponse.Value = unknownMethodError;
|
||||
// Code set in accordance with http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php
|
||||
xmlRpcResponse.SetFault(-32601, String.Format("Requested method [{0}] not found", methodName));
|
||||
}
|
||||
|
||||
responseString = XmlRpcResponseSerializer.Singleton.Serialize(xmlRpcResponse);
|
||||
|
||||
Reference in New Issue
Block a user