aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/EstateManager.cs
diff options
context:
space:
mode:
authorAdam Frisby2007-08-15 14:10:26 +0000
committerAdam Frisby2007-08-15 14:10:26 +0000
commit5699bb2e64766da634ca4be34bc2d8eab991f2e1 (patch)
treecf471be738a0ac69cf6a7a17b0a53183a7bfe68f /OpenSim/Region/Environment/EstateManager.cs
parentPartial fix for the permissions on edited notecards/scripts (now you might st... (diff)
downloadopensim-SC-5699bb2e64766da634ca4be34bc2d8eab991f2e1.zip
opensim-SC-5699bb2e64766da634ca4be34bc2d8eab991f2e1.tar.gz
opensim-SC-5699bb2e64766da634ca4be34bc2d8eab991f2e1.tar.bz2
opensim-SC-5699bb2e64766da634ca4be34bc2d8eab991f2e1.tar.xz
* Permissions! - You can now only perform certain functions (such as editing other peoples objects) if you have permission to do so.
* Moved OnPermissionError to EventManager - now triggers a standard blue alert. * Terraforming now requires permission via the permissions manager. [Defaults to admin-only] * Permissions manager is now substantiated in Scene * Buttload of new permissions added. * Estate manager operations now require various levels of permission to operate * OGS1 now produces 'summary reports' for a commsManager of each scene it maintains connections for. Reduces grid network traffic for ping checks. * Added new "permissions true" / "permissions false" console command to enable or disable permissions.
Diffstat (limited to 'OpenSim/Region/Environment/EstateManager.cs')
-rw-r--r--OpenSim/Region/Environment/EstateManager.cs48
1 files changed, 25 insertions, 23 deletions
diff --git a/OpenSim/Region/Environment/EstateManager.cs b/OpenSim/Region/Environment/EstateManager.cs
index 83bfbb4..447a22c 100644
--- a/OpenSim/Region/Environment/EstateManager.cs
+++ b/OpenSim/Region/Environment/EstateManager.cs
@@ -147,35 +147,37 @@ namespace OpenSim.Region.Environment
147 147
148 public void handleEstateOwnerMessage(EstateOwnerMessagePacket packet, IClientAPI remote_client) 148 public void handleEstateOwnerMessage(EstateOwnerMessagePacket packet, IClientAPI remote_client)
149 { 149 {
150 if (remote_client.AgentId == m_regInfo.MasterAvatarAssignedUUID) 150 switch (Helpers.FieldToUTF8String(packet.MethodData.Method))
151 { 151 {
152 switch (Helpers.FieldToUTF8String(packet.MethodData.Method)) 152 case "getinfo":
153 { 153 this.sendRegionInfoPacketToAll();
154 case "getinfo": 154 break;
155 this.sendRegionInfoPacketToAll(); 155 case "setregioninfo":
156 break; 156 if (m_scene.PermissionsMngr.CanEditEstateTerrain(remote_client.AgentId))
157 case "setregioninfo":
158 estateSetRegionInfoHandler(packet); 157 estateSetRegionInfoHandler(packet);
159 break; 158 break;
160 case "texturebase": 159 case "texturebase":
160 if (m_scene.PermissionsMngr.CanEditEstateTerrain(remote_client.AgentId))
161 estateTextureBaseHandler(packet); 161 estateTextureBaseHandler(packet);
162 break; 162 break;
163 case "texturedetail": 163 case "texturedetail":
164 if (m_scene.PermissionsMngr.CanEditEstateTerrain(remote_client.AgentId))
164 estateTextureDetailHandler(packet); 165 estateTextureDetailHandler(packet);
165 break; 166 break;
166 case "textureheights": 167 case "textureheights":
168 if (m_scene.PermissionsMngr.CanEditEstateTerrain(remote_client.AgentId))
167 estateTextureHeightsHandler(packet); 169 estateTextureHeightsHandler(packet);
168 break; 170 break;
169 case "texturecommit": 171 case "texturecommit":
170 sendRegionHandshakeToAll(); 172 sendRegionHandshakeToAll();
171 break; 173 break;
172 case "setregionterrain": 174 case "setregionterrain":
175 if (m_scene.PermissionsMngr.CanEditEstateTerrain(remote_client.AgentId))
173 estateSetRegionTerrainHandler(packet); 176 estateSetRegionTerrainHandler(packet);
174 break; 177 break;
175 default: 178 default:
176 MainLog.Instance.Error("EstateOwnerMessage: Unknown method requested\n" + packet.ToString()); 179 MainLog.Instance.Error("EstateOwnerMessage: Unknown method requested\n" + packet.ToString());
177 break; 180 break;
178 }
179 } 181 }
180 } 182 }
181 183