diff options
author | Melanie Thielker | 2009-05-24 16:11:35 +0000 |
---|---|---|
committer | Melanie Thielker | 2009-05-24 16:11:35 +0000 |
commit | f3f7d603675ac15d6397b50591b598aacc932862 (patch) | |
tree | c34b79e157ca87266c409a786eba3bdbd4158a60 /OpenSim/Region/CoreModules | |
parent | Fixes map image on link-region (HG). (diff) | |
download | opensim-SC-f3f7d603675ac15d6397b50591b598aacc932862.zip opensim-SC-f3f7d603675ac15d6397b50591b598aacc932862.tar.gz opensim-SC-f3f7d603675ac15d6397b50591b598aacc932862.tar.bz2 opensim-SC-f3f7d603675ac15d6397b50591b598aacc932862.tar.xz |
Add a new permissions check for bulk object returns.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandObject.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs index ce66e46..ccb3a47 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs | |||
@@ -795,6 +795,9 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
795 | Dictionary<UUID,List<SceneObjectGroup>> returns = | 795 | Dictionary<UUID,List<SceneObjectGroup>> returns = |
796 | new Dictionary<UUID,List<SceneObjectGroup>>(); | 796 | new Dictionary<UUID,List<SceneObjectGroup>>(); |
797 | 797 | ||
798 | if (!m_scene.Permissions.CanUseObjectReturn(this, type, remote_client)) | ||
799 | return; | ||
800 | |||
798 | lock (primsOverMe) | 801 | lock (primsOverMe) |
799 | { | 802 | { |
800 | if (type == (uint)ObjectReturnType.Owner) | 803 | if (type == (uint)ObjectReturnType.Owner) |
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs index 46a0da2..6beb6d3 100644 --- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | |||
@@ -168,6 +168,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
168 | m_scene.Permissions.OnDeleteUserInventory += CanDeleteUserInventory; //NOT YET IMPLEMENTED | 168 | m_scene.Permissions.OnDeleteUserInventory += CanDeleteUserInventory; //NOT YET IMPLEMENTED |
169 | 169 | ||
170 | m_scene.Permissions.OnTeleport += CanTeleport; //NOT YET IMPLEMENTED | 170 | m_scene.Permissions.OnTeleport += CanTeleport; //NOT YET IMPLEMENTED |
171 | m_scene.Permissions.OnUseObjectReturn += CanUseObjectReturn; //NOT YET IMPLEMENTED | ||
171 | 172 | ||
172 | m_scene.AddCommand(this, "bypass permissions", | 173 | m_scene.AddCommand(this, "bypass permissions", |
173 | "bypass permissions <true / false>", | 174 | "bypass permissions <true / false>", |
@@ -1523,5 +1524,13 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
1523 | // You can reset the scripts in any object you can edit | 1524 | // You can reset the scripts in any object you can edit |
1524 | return GenericObjectPermission(agentID, prim, false); | 1525 | return GenericObjectPermission(agentID, prim, false); |
1525 | } | 1526 | } |
1527 | |||
1528 | private bool CanUseObjectReturn(ILandObject parcel, uint type, IClientAPI client, Scene scene) | ||
1529 | { | ||
1530 | DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name); | ||
1531 | if (m_bypassPermissions) return m_bypassPermissionsValue; | ||
1532 | |||
1533 | return GenericParcelPermission(client.AgentId, parcel); | ||
1534 | } | ||
1526 | } | 1535 | } |
1527 | } | 1536 | } |