* Enables logins to regions on a grid once they have finished starting up (this does not include script startup).

0.6.0-stable
Justin Clarke Casey 2008-09-19 20:02:19 +00:00
parent 858d8416b4
commit e518fe5d34
2 changed files with 47 additions and 30 deletions

View File

@ -425,7 +425,7 @@ namespace OpenSim
LoadPlugins(); LoadPlugins();
// Only enable logins to the regions once we have completely finished starting up // Only enable logins to the regions once we have completely finished starting up (apart from scripts)
m_commsManager.GridService.RegionLoginsEnabled = true; m_commsManager.GridService.RegionLoginsEnabled = true;
} }

View File

@ -644,6 +644,21 @@ namespace OpenSim.Region.Communications.OGS1
agentData.child = false; agentData.child = false;
} }
XmlRpcResponse resp = new XmlRpcResponse();
if (!m_regionLoginsEnabled)
{
m_log.InfoFormat(
"[CLIENT]: Denying access for user {0} {1} because region login is currently disabled",
agentData.firstname, agentData.lastname);
Hashtable respdata = new Hashtable();
respdata["success"] = "FALSE";
respdata["reason"] = "region login currently disabled";
resp.Value = respdata;
}
else
{
RegionInfo[] regions = m_regionsOnInstance.ToArray(); RegionInfo[] regions = m_regionsOnInstance.ToArray();
bool banned = false; bool banned = false;
@ -662,11 +677,11 @@ namespace OpenSim.Region.Communications.OGS1
} }
} }
XmlRpcResponse resp = new XmlRpcResponse();
if (banned) if (banned)
{ {
m_log.InfoFormat("[CLIENT]: Denying access for user {0} {1} because user is banned",agentData.firstname,agentData.lastname); m_log.InfoFormat(
"[CLIENT]: Denying access for user {0} {1} because user is banned",
agentData.firstname, agentData.lastname);
Hashtable respdata = new Hashtable(); Hashtable respdata = new Hashtable();
respdata["success"] = "FALSE"; respdata["success"] = "FALSE";
@ -680,9 +695,11 @@ namespace OpenSim.Region.Communications.OGS1
respdata["success"] = "TRUE"; respdata["success"] = "TRUE";
resp.Value = respdata; resp.Value = respdata;
} }
}
return resp; return resp;
} }
// Grid Request Processing // Grid Request Processing
/// <summary> /// <summary>
/// Ooops, our Agent must be dead if we're getting this request! /// Ooops, our Agent must be dead if we're getting this request!