Refactoring:
* Renamed IPListenAddr to CommsIPListenAddr * Renamed IPListenPort to CommsIPListenPort New Features: * Begun OGS/.1 implementation -- created new temporary "GridInfo" class to hold grid settings, needs reworking to wherever settings are stored these days.Sugilite
parent
1b8b75d80a
commit
980a8cc629
|
@ -34,9 +34,16 @@ using OpenSim.Framework;
|
||||||
|
|
||||||
namespace OpenGrid.Framework.Communications
|
namespace OpenGrid.Framework.Communications
|
||||||
{
|
{
|
||||||
|
public class GridInfo
|
||||||
|
{
|
||||||
|
public string GridServerURI = "http://grid:8001/";
|
||||||
|
public string GridServerSendKey = "badger";
|
||||||
|
public string GridServerRecvKey = "badger";
|
||||||
|
}
|
||||||
|
|
||||||
public interface IGridServices
|
public interface IGridServices
|
||||||
{
|
{
|
||||||
RegionCommsListener RegisterRegion(RegionInfo regionInfo);
|
RegionCommsListener RegisterRegion(RegionInfo regionInfo, GridInfo gridInfo);
|
||||||
List<RegionInfo> RequestNeighbours(RegionInfo regionInfo);
|
List<RegionInfo> RequestNeighbours(RegionInfo regionInfo);
|
||||||
RegionInfo RequestNeighbourInfo(ulong regionHandle);
|
RegionInfo RequestNeighbourInfo(ulong regionHandle);
|
||||||
List<MapBlockData> RequestNeighbourMapBlocks(int minX, int minY, int maxX, int maxY);
|
List<MapBlockData> RequestNeighbourMapBlocks(int minX, int minY, int maxX, int maxY);
|
||||||
|
|
|
@ -52,8 +52,19 @@ namespace OpenSim.Framework.Types
|
||||||
public string MasterAvatarLastName = "";
|
public string MasterAvatarLastName = "";
|
||||||
public string MasterAvatarSandboxPassword = "";
|
public string MasterAvatarSandboxPassword = "";
|
||||||
|
|
||||||
public int IPListenPort = 0;
|
/// <summary>
|
||||||
public string IPListenAddr = "";
|
/// Port used for listening (TCP and UDP)
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>Seperate TCP and UDP</remarks>
|
||||||
|
public int CommsIPListenPort = 0;
|
||||||
|
/// <summary>
|
||||||
|
/// Address used for internal listening (default: 0.0.0.0?)
|
||||||
|
/// </summary>
|
||||||
|
public string CommsIPListenAddr = "";
|
||||||
|
/// <summary>
|
||||||
|
/// Address used for external addressing (DNS or IP)
|
||||||
|
/// </summary>
|
||||||
|
public string CommsExternalAddress = "";
|
||||||
|
|
||||||
|
|
||||||
public EstateSettings estateSettings;
|
public EstateSettings estateSettings;
|
||||||
|
@ -142,11 +153,11 @@ namespace OpenSim.Framework.Types
|
||||||
{
|
{
|
||||||
string port = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("UDP port for client connections", "9000");
|
string port = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("UDP port for client connections", "9000");
|
||||||
configData.SetAttribute("SimListenPort", port);
|
configData.SetAttribute("SimListenPort", port);
|
||||||
this.IPListenPort = Convert.ToInt32(port);
|
this.CommsIPListenPort = Convert.ToInt32(port);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.IPListenPort = Convert.ToInt32(attri);
|
this.CommsIPListenPort = Convert.ToInt32(attri);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Sim Listen Address
|
//Sim Listen Address
|
||||||
|
@ -154,8 +165,8 @@ namespace OpenSim.Framework.Types
|
||||||
attri = configData.GetAttribute("SimListenAddress");
|
attri = configData.GetAttribute("SimListenAddress");
|
||||||
if (attri == "")
|
if (attri == "")
|
||||||
{
|
{
|
||||||
this.IPListenAddr = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("IP Address to listen on for client connections", "127.0.0.1");
|
this.CommsIPListenAddr = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("IP Address to listen on for client connections", "0.0.0.0");
|
||||||
configData.SetAttribute("SimListenAddress", this.IPListenAddr);
|
configData.SetAttribute("SimListenAddress", this.CommsIPListenAddr);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -166,20 +177,33 @@ namespace OpenSim.Framework.Types
|
||||||
System.Net.IPAddress[] ips = System.Net.Dns.GetHostAddresses(localhostname);
|
System.Net.IPAddress[] ips = System.Net.Dns.GetHostAddresses(localhostname);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.IPListenAddr = ips[0].ToString();
|
this.CommsIPListenAddr = ips[0].ToString();
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
e.ToString();
|
e.ToString();
|
||||||
this.IPListenAddr = "127.0.0.1"; // Use the default if we fail
|
this.CommsIPListenAddr = "0.0.0.0"; // Use the default if we fail
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.IPListenAddr = attri;
|
this.CommsIPListenAddr = attri;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Sim External Address
|
||||||
|
attri = "";
|
||||||
|
attri = configData.GetAttribute("SimExternalAddress");
|
||||||
|
if (attri == "")
|
||||||
|
{
|
||||||
|
this.CommsExternalAddress = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("IP or DNS address to send external clients to", "localhost");
|
||||||
|
configData.SetAttribute("SimExternalAddress", this.CommsExternalAddress);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this.CommsExternalAddress = attri;
|
||||||
|
}
|
||||||
|
|
||||||
attri = "";
|
attri = "";
|
||||||
attri = configData.GetAttribute("TerrainFile");
|
attri = configData.GetAttribute("TerrainFile");
|
||||||
if (attri == "")
|
if (attri == "")
|
||||||
|
@ -263,7 +287,7 @@ namespace OpenSim.Framework.Types
|
||||||
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Name: " + this.RegionName);
|
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Name: " + this.RegionName);
|
||||||
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Region Location: [" + this.RegionLocX.ToString() + "," + this.RegionLocY + "]");
|
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Region Location: [" + this.RegionLocX.ToString() + "," + this.RegionLocY + "]");
|
||||||
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Region Handle: " + this.RegionHandle.ToString());
|
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Region Handle: " + this.RegionHandle.ToString());
|
||||||
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Listening on IP: " + this.IPListenAddr + ":" + this.IPListenPort);
|
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Listening on IP: " + this.CommsIPListenAddr + ":" + this.CommsIPListenPort);
|
||||||
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Sandbox Mode? " + isSandbox.ToString());
|
OpenSim.Framework.Console.MainLog.Instance.Verbose( "Sandbox Mode? " + isSandbox.ToString());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,6 +50,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleApp", "OpenSim\Exampl
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLRPC", "Common\XmlRpcCS\XMLRPC.csproj", "{8E81D43C-0000-0000-0000-000000000000}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLRPC", "Common\XmlRpcCS\XMLRPC.csproj", "{8E81D43C-0000-0000-0000-000000000000}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenGrid.Framework.Communications.OGS1", "Common\OpenGrid.Framework.Communications.OGS1\OpenGrid.Framework.Communications.OGS1.csproj", "{C1F40DD4-A68B-4233-9142-CE236775A3CE}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
@ -156,6 +158,10 @@ Global
|
||||||
{8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.Build.0 = Release|Any CPU
|
{8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{C1F40DD4-A68B-4233-9142-CE236775A3CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{C1F40DD4-A68B-4233-9142-CE236775A3CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{C1F40DD4-A68B-4233-9142-CE236775A3CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{C1F40DD4-A68B-4233-9142-CE236775A3CE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
|
@ -51,7 +51,7 @@ namespace OpenSim.LocalCommunications
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="regionInfo"></param>
|
/// <param name="regionInfo"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public RegionCommsListener RegisterRegion(RegionInfo regionInfo)
|
public RegionCommsListener RegisterRegion(RegionInfo regionInfo, GridInfo gridInfo)
|
||||||
{
|
{
|
||||||
//Console.WriteLine("CommsManager - Region " + regionInfo.RegionHandle + " , " + regionInfo.RegionLocX + " , "+ regionInfo.RegionLocY +" is registering");
|
//Console.WriteLine("CommsManager - Region " + regionInfo.RegionHandle + " , " + regionInfo.RegionLocX + " , "+ regionInfo.RegionLocY +" is registering");
|
||||||
if (!this.regions.ContainsKey((uint)regionInfo.RegionHandle))
|
if (!this.regions.ContainsKey((uint)regionInfo.RegionHandle))
|
||||||
|
|
|
@ -87,11 +87,11 @@ namespace OpenSim.LocalCommunications
|
||||||
"'position':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " +
|
"'position':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " +
|
||||||
"'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}";
|
"'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}";
|
||||||
string capsPath = Util.GetRandomCapsPath();
|
string capsPath = Util.GetRandomCapsPath();
|
||||||
response.SimAddress = reg.IPListenAddr;
|
response.SimAddress = reg.CommsIPListenAddr;
|
||||||
response.SimPort = (Int32)reg.IPListenPort;
|
response.SimPort = (Int32)reg.CommsIPListenPort;
|
||||||
response.RegionX = reg.RegionLocX ;
|
response.RegionX = reg.RegionLocX ;
|
||||||
response.RegionY = reg.RegionLocY ;
|
response.RegionY = reg.RegionLocY ;
|
||||||
response.SeedCapability = "http://" + reg.IPListenAddr + ":" + "9000" + "/CAPS/"+capsPath +"0000/";
|
response.SeedCapability = "http://" + reg.CommsIPListenAddr + ":" + "9000" + "/CAPS/" + capsPath + "0000/";
|
||||||
theUser.currentAgent.currentRegion = reg.SimUUID;
|
theUser.currentAgent.currentRegion = reg.SimUUID;
|
||||||
theUser.currentAgent.currentHandle = reg.RegionHandle;
|
theUser.currentAgent.currentHandle = reg.RegionHandle;
|
||||||
|
|
||||||
|
|
|
@ -704,7 +704,8 @@ namespace OpenSim.Region.Scenes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void RegisterRegionWithComms()
|
public void RegisterRegionWithComms()
|
||||||
{
|
{
|
||||||
this.regionCommsHost = this.commsManager.GridServer.RegisterRegion(this.m_regInfo);
|
GridInfo gridSettings = new GridInfo();
|
||||||
|
this.regionCommsHost = this.commsManager.GridServer.RegisterRegion(this.m_regInfo,gridSettings);
|
||||||
if (this.regionCommsHost != null)
|
if (this.regionCommsHost != null)
|
||||||
{
|
{
|
||||||
this.regionCommsHost.OnExpectUser += new ExpectUserDelegate(this.NewUserConnection);
|
this.regionCommsHost.OnExpectUser += new ExpectUserDelegate(this.NewUserConnection);
|
||||||
|
@ -726,7 +727,7 @@ namespace OpenSim.Region.Scenes
|
||||||
if (agent.CapsPath != "")
|
if (agent.CapsPath != "")
|
||||||
{
|
{
|
||||||
//Console.WriteLine("new user, so creating caps handler for it");
|
//Console.WriteLine("new user, so creating caps handler for it");
|
||||||
Caps cap = new Caps(this.assetCache, httpListener, this.m_regInfo.IPListenAddr, 9000, agent.CapsPath, agent.AgentID);
|
Caps cap = new Caps(this.assetCache, httpListener, this.m_regInfo.CommsIPListenAddr, 9000, agent.CapsPath, agent.AgentID);
|
||||||
cap.RegisterHandlers();
|
cap.RegisterHandlers();
|
||||||
this.capsHandlers.Add(cap);
|
this.capsHandlers.Add(cap);
|
||||||
}
|
}
|
||||||
|
@ -765,7 +766,7 @@ namespace OpenSim.Region.Scenes
|
||||||
agent.startpos = new LLVector3(128, 128, 70);
|
agent.startpos = new LLVector3(128, 128, 70);
|
||||||
agent.child = true;
|
agent.child = true;
|
||||||
this.commsManager.InterRegion.InformRegionOfChildAgent(neighbours[i].RegionHandle, agent);
|
this.commsManager.InterRegion.InformRegionOfChildAgent(neighbours[i].RegionHandle, agent);
|
||||||
remoteClient.InformClientOfNeighbour(neighbours[i].RegionHandle, System.Net.IPAddress.Parse(neighbours[i].IPListenAddr), (ushort)neighbours[i].IPListenPort);
|
remoteClient.InformClientOfNeighbour(neighbours[i].RegionHandle, System.Net.IPAddress.Parse(neighbours[i].CommsIPListenAddr), (ushort)neighbours[i].CommsIPListenPort);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -826,7 +827,7 @@ namespace OpenSim.Region.Scenes
|
||||||
agent.child = true;
|
agent.child = true;
|
||||||
this.commsManager.InterRegion.InformRegionOfChildAgent(regionHandle, agent);
|
this.commsManager.InterRegion.InformRegionOfChildAgent(regionHandle, agent);
|
||||||
this.commsManager.InterRegion.ExpectAvatarCrossing(regionHandle, remoteClient.AgentId, position);
|
this.commsManager.InterRegion.ExpectAvatarCrossing(regionHandle, remoteClient.AgentId, position);
|
||||||
remoteClient.SendRegionTeleport(regionHandle, 13, reg.IPListenAddr, (ushort)reg.IPListenPort, 4, (1 << 4));
|
remoteClient.SendRegionTeleport(regionHandle, 13, reg.CommsIPListenAddr, (ushort)reg.CommsIPListenPort, 4, (1 << 4));
|
||||||
}
|
}
|
||||||
//remoteClient.SendTeleportCancel();
|
//remoteClient.SendTeleportCancel();
|
||||||
}
|
}
|
||||||
|
|
|
@ -444,7 +444,7 @@ namespace OpenSim.Region.Scenes
|
||||||
if (res)
|
if (res)
|
||||||
{
|
{
|
||||||
this.MakeChildAgent();
|
this.MakeChildAgent();
|
||||||
this.ControllingClient.CrossRegion(neighbourHandle, newpos, vel, System.Net.IPAddress.Parse(neighbourRegion.IPListenAddr), (ushort)neighbourRegion.IPListenPort);
|
this.ControllingClient.CrossRegion(neighbourHandle, newpos, vel, System.Net.IPAddress.Parse(neighbourRegion.CommsIPListenAddr), (ushort)neighbourRegion.CommsIPListenPort);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -233,7 +233,7 @@ namespace OpenSim
|
||||||
regionDat.InitConfig(this.m_sandbox, regionConfig);
|
regionDat.InitConfig(this.m_sandbox, regionConfig);
|
||||||
regionConfig.Close();
|
regionConfig.Close();
|
||||||
|
|
||||||
udpServer = new UDPServer(regionDat.IPListenPort, this.AssetCache, this.InventoryCache, this.m_log, authenBase);
|
udpServer = new UDPServer(regionDat.CommsIPListenPort, this.AssetCache, this.InventoryCache, this.m_log, authenBase);
|
||||||
|
|
||||||
m_udpServer.Add(udpServer);
|
m_udpServer.Add(udpServer);
|
||||||
this.regionData.Add(regionDat);
|
this.regionData.Add(regionDat);
|
||||||
|
|
Loading…
Reference in New Issue