diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 37734f4..2091bf0 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -3343,12 +3343,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
3343 | /// Use NewUserConnection() directly if possible so the return type can refuse connections. | 3343 | /// Use NewUserConnection() directly if possible so the return type can refuse connections. |
3344 | /// At the moment nothing actually seems to use this event, | 3344 | /// At the moment nothing actually seems to use this event, |
3345 | /// as everything is switching to calling the NewUserConnection method directly. | 3345 | /// as everything is switching to calling the NewUserConnection method directly. |
3346 | /// | ||
3347 | /// Now obsoleting this because it doesn't handle teleportFlags propertly | ||
3348 | /// | ||
3346 | /// </summary> | 3349 | /// </summary> |
3347 | /// <param name="agent"></param> | 3350 | /// <param name="agent"></param> |
3351 | [Obsolete("Please call NewUserConnection directly.")] | ||
3348 | public void HandleNewUserConnection(AgentCircuitData agent) | 3352 | public void HandleNewUserConnection(AgentCircuitData agent) |
3349 | { | 3353 | { |
3350 | string reason; | 3354 | string reason; |
3351 | NewUserConnection(agent, out reason); | 3355 | NewUserConnection(agent, 0, out reason); |
3352 | } | 3356 | } |
3353 | 3357 | ||
3354 | /// <summary> | 3358 | /// <summary> |
@@ -3361,8 +3365,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
3361 | /// <param name="reason">Outputs the reason for the false response on this string</param> | 3365 | /// <param name="reason">Outputs the reason for the false response on this string</param> |
3362 | /// <returns>True if the region accepts this agent. False if it does not. False will | 3366 | /// <returns>True if the region accepts this agent. False if it does not. False will |
3363 | /// also return a reason.</returns> | 3367 | /// also return a reason.</returns> |
3364 | public bool NewUserConnection(AgentCircuitData agent, out string reason) | 3368 | public bool NewUserConnection(AgentCircuitData agent, uint teleportFlags, out string reason) |
3365 | { | 3369 | { |
3370 | //Teleport flags: | ||
3371 | // | ||
3372 | // TeleportFlags.ViaGodlikeLure - Border Crossing | ||
3373 | // TeleportFlags.ViaLogin - Login | ||
3374 | // TeleportFlags.TeleportFlags.ViaLure - Teleport request sent by another user | ||
3375 | // TeleportFlags.ViaLandmark | TeleportFlags.ViaLocation | TeleportFlags.ViaLandmark | TeleportFlags.Default - Regular Teleport | ||
3376 | |||
3377 | |||
3366 | if (loginsdisabled) | 3378 | if (loginsdisabled) |
3367 | { | 3379 | { |
3368 | reason = "Logins Disabled"; | 3380 | reason = "Logins Disabled"; |
@@ -3370,9 +3382,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3370 | } | 3382 | } |
3371 | // Don't disable this log message - it's too helpful | 3383 | // Don't disable this log message - it's too helpful |
3372 | m_log.InfoFormat( | 3384 | m_log.InfoFormat( |
3373 | "[CONNECTION BEGIN]: Region {0} told of incoming {1} agent {2} {3} {4} (circuit code {5})", | 3385 | "[CONNECTION BEGIN]: Region {0} told of incoming {1} agent {2} {3} {4} (circuit code {5}, teleportflags {6})", |
3374 | RegionInfo.RegionName, (agent.child ? "child" : "root"), agent.firstname, agent.lastname, | 3386 | RegionInfo.RegionName, (agent.child ? "child" : "root"), agent.firstname, agent.lastname, |
3375 | agent.AgentID, agent.circuitcode); | 3387 | agent.AgentID, agent.circuitcode, teleportFlags); |
3376 | 3388 | ||
3377 | reason = String.Empty; | 3389 | reason = String.Empty; |
3378 | if (!AuthenticateUser(agent, out reason)) | 3390 | if (!AuthenticateUser(agent, out reason)) |