diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index 53be68fa1f..d4b2f2d4a0 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs @@ -112,6 +112,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer private Stat m_interRegionTeleportFailures; protected string m_ThisHomeURI; + protected string m_GatekeeperURI; protected bool m_Enabled = false; @@ -215,6 +216,10 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer m_ThisHomeURI = hypergridConfig.GetString("HomeURI", string.Empty); if (m_ThisHomeURI != string.Empty && !m_ThisHomeURI.EndsWith("/")) m_ThisHomeURI += '/'; + + m_GatekeeperURI = hypergridConfig.GetString("GatekeeperURI", string.Empty); + if (m_GatekeeperURI != string.Empty && !m_GatekeeperURI.EndsWith("/")) + m_GatekeeperURI += '/'; } IConfig transferConfig = source.Configs["EntityTransfer"]; @@ -1307,7 +1312,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer protected virtual bool CreateAgent(ScenePresence sp, GridRegion reg, GridRegion finalDestination, AgentCircuitData agentCircuit, uint teleportFlags, out string reason, out bool logout) { GridRegion source = new GridRegion(Scene.RegionInfo); - source.RawServerURI = m_ThisHomeURI; + source.RawServerURI = m_GatekeeperURI; logout = false; bool success = Scene.SimulationService.CreateAgent(source, finalDestination, agentCircuit, teleportFlags, out reason); diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs index 79bff06340..0becfb21b1 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs @@ -288,7 +288,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer connector = new UserAgentServiceConnector(userAgentDriver); GridRegion source = new GridRegion(Scene.RegionInfo); - source.RawServerURI = m_ThisHomeURI; + source.RawServerURI = m_GatekeeperURI; bool success = connector.LoginAgentToGrid(source, agentCircuit, reg, finalDestination, false, out reason); logout = success; // flag for later logout from this grid; this is an HG TP