aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
authorDiva Canto2012-03-22 12:57:12 -0700
committerDiva Canto2012-03-22 12:57:12 -0700
commit6146e7ef258b10888ad7464b72b75cca701e02c9 (patch)
tree6603496c5758359b808f8719a641977660aca0fb /OpenSim/Region/Framework
parentMerge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff)
downloadopensim-SC_OLD-6146e7ef258b10888ad7464b72b75cca701e02c9.zip
opensim-SC_OLD-6146e7ef258b10888ad7464b72b75cca701e02c9.tar.gz
opensim-SC_OLD-6146e7ef258b10888ad7464b72b75cca701e02c9.tar.bz2
opensim-SC_OLD-6146e7ef258b10888ad7464b72b75cca701e02c9.tar.xz
Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch.
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Permissions.cs17
1 files changed, 17 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
index e1fedf4..a4605c4 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
@@ -90,6 +90,7 @@ namespace OpenSim.Region.Framework.Scenes
90 public delegate bool TeleportHandler(UUID userID, Scene scene); 90 public delegate bool TeleportHandler(UUID userID, Scene scene);
91 public delegate bool ControlPrimMediaHandler(UUID userID, UUID primID, int face); 91 public delegate bool ControlPrimMediaHandler(UUID userID, UUID primID, int face);
92 public delegate bool InteractWithPrimMediaHandler(UUID userID, UUID primID, int face); 92 public delegate bool InteractWithPrimMediaHandler(UUID userID, UUID primID, int face);
93 public delegate void SendLandPropertiesHandler(UUID userID, ILandObject realLand, out ILandObject landToSend);
93 #endregion 94 #endregion
94 95
95 public class ScenePermissions 96 public class ScenePermissions
@@ -157,6 +158,7 @@ namespace OpenSim.Region.Framework.Scenes
157 public event TeleportHandler OnTeleport; 158 public event TeleportHandler OnTeleport;
158 public event ControlPrimMediaHandler OnControlPrimMedia; 159 public event ControlPrimMediaHandler OnControlPrimMedia;
159 public event InteractWithPrimMediaHandler OnInteractWithPrimMedia; 160 public event InteractWithPrimMediaHandler OnInteractWithPrimMedia;
161 public event SendLandPropertiesHandler OnSendLandProperties;
160 #endregion 162 #endregion
161 163
162 #region Object Permission Checks 164 #region Object Permission Checks
@@ -1098,5 +1100,20 @@ namespace OpenSim.Region.Framework.Scenes
1098 } 1100 }
1099 return true; 1101 return true;
1100 } 1102 }
1103
1104 public void LandObjectForClient(UUID userID, ILandObject realLand, out ILandObject landToSend)
1105 {
1106 landToSend = realLand;
1107 SendLandPropertiesHandler handler = OnSendLandProperties;
1108 if (handler != null)
1109 {
1110 Delegate[] list = handler.GetInvocationList();
1111 foreach (SendLandPropertiesHandler h in list)
1112 {
1113 h(userID, realLand, out landToSend);
1114 }
1115 }
1116 }
1117
1101 } 1118 }
1102} 1119}