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
|
||||
{
|
||||
public class GridInfo
|
||||
{
|
||||
public string GridServerURI = "http://grid:8001/";
|
||||
public string GridServerSendKey = "badger";
|
||||
public string GridServerRecvKey = "badger";
|
||||
}
|
||||
|
||||
public interface IGridServices
|
||||
{
|
||||
RegionCommsListener RegisterRegion(RegionInfo regionInfo);
|
||||
RegionCommsListener RegisterRegion(RegionInfo regionInfo, GridInfo gridInfo);
|
||||
List<RegionInfo> RequestNeighbours(RegionInfo regionInfo);
|
||||
RegionInfo RequestNeighbourInfo(ulong regionHandle);
|
||||
List<MapBlockData> RequestNeighbourMapBlocks(int minX, int minY, int maxX, int maxY);
|
||||
|
|
|
@ -52,8 +52,19 @@ namespace OpenSim.Framework.Types
|
|||
public string MasterAvatarLastName = "";
|
||||
public string MasterAvatarSandboxPassword = "";
|
||||
|
||||
public int IPListenPort = 0;
|
||||
public string IPListenAddr = "";
|
||||
/// <summary>
|
||||
/// 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;
|
||||
|
@ -142,11 +153,11 @@ namespace OpenSim.Framework.Types
|
|||
{
|
||||
string port = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("UDP port for client connections", "9000");
|
||||
configData.SetAttribute("SimListenPort", port);
|
||||
this.IPListenPort = Convert.ToInt32(port);
|
||||
this.CommsIPListenPort = Convert.ToInt32(port);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.IPListenPort = Convert.ToInt32(attri);
|
||||
this.CommsIPListenPort = Convert.ToInt32(attri);
|
||||
}
|
||||
|
||||
//Sim Listen Address
|
||||
|
@ -154,8 +165,8 @@ namespace OpenSim.Framework.Types
|
|||
attri = configData.GetAttribute("SimListenAddress");
|
||||
if (attri == "")
|
||||
{
|
||||
this.IPListenAddr = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("IP Address to listen on for client connections", "127.0.0.1");
|
||||
configData.SetAttribute("SimListenAddress", this.IPListenAddr);
|
||||
this.CommsIPListenAddr = OpenSim.Framework.Console.MainLog.Instance.CmdPrompt("IP Address to listen on for client connections", "0.0.0.0");
|
||||
configData.SetAttribute("SimListenAddress", this.CommsIPListenAddr);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -166,20 +177,33 @@ namespace OpenSim.Framework.Types
|
|||
System.Net.IPAddress[] ips = System.Net.Dns.GetHostAddresses(localhostname);
|
||||
try
|
||||
{
|
||||
this.IPListenAddr = ips[0].ToString();
|
||||
this.CommsIPListenAddr = ips[0].ToString();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
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
|
||||
{
|
||||
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 = configData.GetAttribute("TerrainFile");
|
||||
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( "Region Location: [" + this.RegionLocX.ToString() + "," + this.RegionLocY + "]");
|
||||
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());
|
||||
|
||||
}
|
||||
|
|
|
@ -50,6 +50,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleApp", "OpenSim\Exampl
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLRPC", "Common\XmlRpcCS\XMLRPC.csproj", "{8E81D43C-0000-0000-0000-000000000000}"
|
||||
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
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
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}.Release|Any CPU.ActiveCfg = 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
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
@ -51,7 +51,7 @@ namespace OpenSim.LocalCommunications
|
|||
/// </summary>
|
||||
/// <param name="regionInfo"></param>
|
||||
/// <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");
|
||||
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() + "], " +
|
||||
"'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}";
|
||||
string capsPath = Util.GetRandomCapsPath();
|
||||
response.SimAddress = reg.IPListenAddr;
|
||||
response.SimPort = (Int32)reg.IPListenPort;
|
||||
response.SimAddress = reg.CommsIPListenAddr;
|
||||
response.SimPort = (Int32)reg.CommsIPListenPort;
|
||||
response.RegionX = reg.RegionLocX ;
|
||||
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.currentHandle = reg.RegionHandle;
|
||||
|
||||
|
|
|
@ -704,7 +704,8 @@ namespace OpenSim.Region.Scenes
|
|||
/// </summary>
|
||||
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)
|
||||
{
|
||||
this.regionCommsHost.OnExpectUser += new ExpectUserDelegate(this.NewUserConnection);
|
||||
|
@ -726,7 +727,7 @@ namespace OpenSim.Region.Scenes
|
|||
if (agent.CapsPath != "")
|
||||
{
|
||||
//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();
|
||||
this.capsHandlers.Add(cap);
|
||||
}
|
||||
|
@ -765,7 +766,7 @@ namespace OpenSim.Region.Scenes
|
|||
agent.startpos = new LLVector3(128, 128, 70);
|
||||
agent.child = true;
|
||||
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;
|
||||
this.commsManager.InterRegion.InformRegionOfChildAgent(regionHandle, agent);
|
||||
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();
|
||||
}
|
||||
|
|
|
@ -444,7 +444,7 @@ namespace OpenSim.Region.Scenes
|
|||
if (res)
|
||||
{
|
||||
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);
|
||||
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);
|
||||
this.regionData.Add(regionDat);
|
||||
|
|
Loading…
Reference in New Issue