diff options
Diffstat (limited to 'OpenSim/Services/HypergridService')
-rw-r--r-- | OpenSim/Services/HypergridService/GatekeeperService.cs | 14 | ||||
-rw-r--r-- | OpenSim/Services/HypergridService/UserAgentService.cs | 12 |
2 files changed, 15 insertions, 11 deletions
diff --git a/OpenSim/Services/HypergridService/GatekeeperService.cs b/OpenSim/Services/HypergridService/GatekeeperService.cs index 24b98fd..69a593b 100644 --- a/OpenSim/Services/HypergridService/GatekeeperService.cs +++ b/OpenSim/Services/HypergridService/GatekeeperService.cs | |||
@@ -230,16 +230,18 @@ namespace OpenSim.Services.HypergridService | |||
230 | } | 230 | } |
231 | 231 | ||
232 | #region Login Agent | 232 | #region Login Agent |
233 | public bool LoginAgent(AgentCircuitData aCircuit, GridRegion destination, out string reason) | 233 | public bool LoginAgent(GridRegion source, AgentCircuitData aCircuit, GridRegion destination, out string reason) |
234 | { | 234 | { |
235 | reason = string.Empty; | 235 | reason = string.Empty; |
236 | 236 | ||
237 | string authURL = string.Empty; | 237 | string authURL = string.Empty; |
238 | if (aCircuit.ServiceURLs.ContainsKey("HomeURI")) | 238 | if (aCircuit.ServiceURLs.ContainsKey("HomeURI")) |
239 | authURL = aCircuit.ServiceURLs["HomeURI"].ToString(); | 239 | authURL = aCircuit.ServiceURLs["HomeURI"].ToString(); |
240 | m_log.InfoFormat("[GATEKEEPER SERVICE]: Login request for {0} {1} @ {2} ({3}) at {4} using viewer {5}, channel {6}, IP {7}, Mac {8}, Id0 {9} Teleport Flags {10}", | 240 | |
241 | aCircuit.firstname, aCircuit.lastname, authURL, aCircuit.AgentID, destination.RegionName, | 241 | m_log.InfoFormat("[GATEKEEPER SERVICE]: Login request for {0} {1} @ {2} ({3}) at {4} using viewer {5}, channel {6}, IP {7}, Mac {8}, Id0 {9}, Teleport Flags: {10}. From region {11}", |
242 | aCircuit.Viewer, aCircuit.Channel, aCircuit.IPAddress, aCircuit.Mac, aCircuit.Id0, aCircuit.teleportFlags.ToString()); | 242 | aCircuit.firstname, aCircuit.lastname, authURL, aCircuit.AgentID, destination.RegionID, |
243 | aCircuit.Viewer, aCircuit.Channel, aCircuit.IPAddress, aCircuit.Mac, aCircuit.Id0, (TeleportFlags)aCircuit.teleportFlags, | ||
244 | (source == null) ? "Unknown" : string.Format("{0} ({1}){2}", source.RegionName, source.RegionID, (source.RawServerURI == null) ? "" : " @ " + source.ServerURI)); | ||
243 | 245 | ||
244 | string curViewer = Util.GetViewerName(aCircuit); | 246 | string curViewer = Util.GetViewerName(aCircuit); |
245 | 247 | ||
@@ -428,9 +430,9 @@ namespace OpenSim.Services.HypergridService | |||
428 | // Preserve our TeleportFlags we have gathered so-far | 430 | // Preserve our TeleportFlags we have gathered so-far |
429 | loginFlag |= (Constants.TeleportFlags) aCircuit.teleportFlags; | 431 | loginFlag |= (Constants.TeleportFlags) aCircuit.teleportFlags; |
430 | 432 | ||
431 | m_log.DebugFormat("[GATEKEEPER SERVICE]: Launching {0} {1}", aCircuit.Name, loginFlag); | 433 | m_log.DebugFormat("[GATEKEEPER SERVICE]: Launching {0}, Teleport Flags: {1}", aCircuit.Name, loginFlag); |
432 | 434 | ||
433 | return m_SimulationService.CreateAgent(destination, aCircuit, (uint)loginFlag, out reason); | 435 | return m_SimulationService.CreateAgent(source, destination, aCircuit, (uint)loginFlag, out reason); |
434 | } | 436 | } |
435 | 437 | ||
436 | protected bool Authenticate(AgentCircuitData aCircuit) | 438 | protected bool Authenticate(AgentCircuitData aCircuit) |
diff --git a/OpenSim/Services/HypergridService/UserAgentService.cs b/OpenSim/Services/HypergridService/UserAgentService.cs index b414aca..6ec2f19 100644 --- a/OpenSim/Services/HypergridService/UserAgentService.cs +++ b/OpenSim/Services/HypergridService/UserAgentService.cs | |||
@@ -215,7 +215,7 @@ namespace OpenSim.Services.HypergridService | |||
215 | return home; | 215 | return home; |
216 | } | 216 | } |
217 | 217 | ||
218 | public bool LoginAgentToGrid(AgentCircuitData agentCircuit, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason) | 218 | public bool LoginAgentToGrid(GridRegion source, AgentCircuitData agentCircuit, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason) |
219 | { | 219 | { |
220 | m_log.DebugFormat("[USER AGENT SERVICE]: Request to login user {0} {1} (@{2}) to grid {3}", | 220 | m_log.DebugFormat("[USER AGENT SERVICE]: Request to login user {0} {1} (@{2}) to grid {3}", |
221 | agentCircuit.firstname, agentCircuit.lastname, (fromLogin ? agentCircuit.IPAddress : "stored IP"), gatekeeper.ServerURI); | 221 | agentCircuit.firstname, agentCircuit.lastname, (fromLogin ? agentCircuit.IPAddress : "stored IP"), gatekeeper.ServerURI); |
@@ -274,10 +274,12 @@ namespace OpenSim.Services.HypergridService | |||
274 | m_log.DebugFormat("[USER AGENT SERVICE]: this grid: {0}, desired grid: {1}, desired region: {2}", m_GridName, gridName, region.RegionID); | 274 | m_log.DebugFormat("[USER AGENT SERVICE]: this grid: {0}, desired grid: {1}, desired region: {2}", m_GridName, gridName, region.RegionID); |
275 | 275 | ||
276 | if (m_GridName == gridName) | 276 | if (m_GridName == gridName) |
277 | success = m_GatekeeperService.LoginAgent(agentCircuit, finalDestination, out reason); | 277 | { |
278 | success = m_GatekeeperService.LoginAgent(source, agentCircuit, finalDestination, out reason); | ||
279 | } | ||
278 | else | 280 | else |
279 | { | 281 | { |
280 | success = m_GatekeeperConnector.CreateAgent(region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out myExternalIP, out reason); | 282 | success = m_GatekeeperConnector.CreateAgent(source, region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out myExternalIP, out reason); |
281 | if (success) | 283 | if (success) |
282 | // Report them as nowhere | 284 | // Report them as nowhere |
283 | m_PresenceService.ReportAgent(agentCircuit.SessionID, UUID.Zero); | 285 | m_PresenceService.ReportAgent(agentCircuit.SessionID, UUID.Zero); |
@@ -307,10 +309,10 @@ namespace OpenSim.Services.HypergridService | |||
307 | return true; | 309 | return true; |
308 | } | 310 | } |
309 | 311 | ||
310 | public bool LoginAgentToGrid(AgentCircuitData agentCircuit, GridRegion gatekeeper, GridRegion finalDestination, out string reason) | 312 | public bool LoginAgentToGrid(GridRegion source, AgentCircuitData agentCircuit, GridRegion gatekeeper, GridRegion finalDestination, out string reason) |
311 | { | 313 | { |
312 | reason = string.Empty; | 314 | reason = string.Empty; |
313 | return LoginAgentToGrid(agentCircuit, gatekeeper, finalDestination, false, out reason); | 315 | return LoginAgentToGrid(source, agentCircuit, gatekeeper, finalDestination, false, out reason); |
314 | } | 316 | } |
315 | 317 | ||
316 | TravelingAgentInfo CreateTravelInfo(AgentCircuitData agentCircuit, GridRegion region, bool fromLogin, out TravelingAgentInfo existing) | 318 | TravelingAgentInfo CreateTravelInfo(AgentCircuitData agentCircuit, GridRegion region, bool fromLogin, out TravelingAgentInfo existing) |