diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | 38 |
1 files changed, 24 insertions, 14 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index 40d9d6f..fc478ab 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | |||
@@ -739,7 +739,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
739 | { | 739 | { |
740 | // High because there is no security check. High griefer potential | 740 | // High because there is no security check. High griefer potential |
741 | // | 741 | // |
742 | CheckThreatLevel(ThreatLevel.High, "osTeleportAgent"); | 742 | CheckThreatLevel(ThreatLevel.Severe, "osTeleportAgent"); |
743 | 743 | ||
744 | TeleportAgent(agent, regionName, position, lookat, false); | 744 | TeleportAgent(agent, regionName, position, lookat, false); |
745 | } | 745 | } |
@@ -756,11 +756,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
756 | { | 756 | { |
757 | // For osTeleportAgent, agent must be over owners land to avoid abuse | 757 | // For osTeleportAgent, agent must be over owners land to avoid abuse |
758 | // For osTeleportOwner, this restriction isn't necessary | 758 | // For osTeleportOwner, this restriction isn't necessary |
759 | if (relaxRestrictions || | 759 | |
760 | m_host.OwnerID | 760 | // commented out because its redundant and uneeded please remove eventually. |
761 | == World.LandChannel.GetLandObject( | 761 | // if (relaxRestrictions || |
762 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | 762 | // m_host.OwnerID |
763 | { | 763 | // == World.LandChannel.GetLandObject( |
764 | // presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | ||
765 | // { | ||
766 | |||
764 | // We will launch the teleport on a new thread so that when the script threads are terminated | 767 | // We will launch the teleport on a new thread so that when the script threads are terminated |
765 | // before teleport in ScriptInstance.GetXMLState(), we don't end up aborting the one doing the teleporting. | 768 | // before teleport in ScriptInstance.GetXMLState(), we don't end up aborting the one doing the teleporting. |
766 | Util.FireAndForget( | 769 | Util.FireAndForget( |
@@ -769,7 +772,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
769 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation)); | 772 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation)); |
770 | 773 | ||
771 | ScriptSleep(5000); | 774 | ScriptSleep(5000); |
772 | } | 775 | |
776 | // } | ||
777 | |||
773 | } | 778 | } |
774 | } | 779 | } |
775 | } | 780 | } |
@@ -778,7 +783,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
778 | { | 783 | { |
779 | // High because there is no security check. High griefer potential | 784 | // High because there is no security check. High griefer potential |
780 | // | 785 | // |
781 | CheckThreatLevel(ThreatLevel.High, "osTeleportAgent"); | 786 | CheckThreatLevel(ThreatLevel.Severe, "osTeleportAgent"); |
782 | 787 | ||
783 | TeleportAgent(agent, regionX, regionY, position, lookat, false); | 788 | TeleportAgent(agent, regionX, regionY, position, lookat, false); |
784 | } | 789 | } |
@@ -797,11 +802,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
797 | { | 802 | { |
798 | // For osTeleportAgent, agent must be over owners land to avoid abuse | 803 | // For osTeleportAgent, agent must be over owners land to avoid abuse |
799 | // For osTeleportOwner, this restriction isn't necessary | 804 | // For osTeleportOwner, this restriction isn't necessary |
800 | if (relaxRestrictions || | 805 | |
801 | m_host.OwnerID | 806 | // commented out because its redundant and uneeded please remove eventually. |
802 | == World.LandChannel.GetLandObject( | 807 | // if (relaxRestrictions || |
803 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | 808 | // m_host.OwnerID |
804 | { | 809 | // == World.LandChannel.GetLandObject( |
810 | // presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | ||
811 | // { | ||
812 | |||
805 | // We will launch the teleport on a new thread so that when the script threads are terminated | 813 | // We will launch the teleport on a new thread so that when the script threads are terminated |
806 | // before teleport in ScriptInstance.GetXMLState(), we don't end up aborting the one doing the teleporting. | 814 | // before teleport in ScriptInstance.GetXMLState(), we don't end up aborting the one doing the teleporting. |
807 | Util.FireAndForget( | 815 | Util.FireAndForget( |
@@ -810,7 +818,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
810 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation)); | 818 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation)); |
811 | 819 | ||
812 | ScriptSleep(5000); | 820 | ScriptSleep(5000); |
813 | } | 821 | |
822 | // } | ||
823 | |||
814 | } | 824 | } |
815 | } | 825 | } |
816 | } | 826 | } |