aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Permissions
diff options
context:
space:
mode:
authorMelanie2010-02-08 15:53:20 +0000
committerMelanie2010-02-08 15:53:38 +0000
commitbaaf660511214e52ea4ed20b8e80ec8e1ff06a3a (patch)
tree1e90c7a22ea3354d6bfd5d2b3f8f64f199dbd477 /OpenSim/Region/CoreModules/World/Permissions
parentAdded missing configs to Standalone.ini (diff)
parentAdding the Careminster "Configger" tool to OpenSim. The tool will, when launched (diff)
downloadopensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.zip
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.gz
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.bz2
opensim-SC_OLD-baaf660511214e52ea4ed20b8e80ec8e1ff06a3a.tar.xz
Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken. Please check!
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Permissions')
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs11
1 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index 72dd373..4652d70 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -142,6 +142,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
142 private bool m_debugPermissions = false; 142 private bool m_debugPermissions = false;
143 private bool m_allowGridGods = false; 143 private bool m_allowGridGods = false;
144 private bool m_RegionOwnerIsGod = false; 144 private bool m_RegionOwnerIsGod = false;
145 private bool m_RegionManagerIsGod = false;
145 private bool m_ParcelOwnerIsGod = false; 146 private bool m_ParcelOwnerIsGod = false;
146 147
147 /// <value> 148 /// <value>
@@ -184,6 +185,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
184 m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false); 185 m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false);
185 m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true); 186 m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true);
186 m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true); 187 m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true);
188 m_RegionManagerIsGod = myConfig.GetBoolean("region_manager_is_god", false);
187 m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true); 189 m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true);
188 190
189 m_allowedScriptCreators 191 m_allowedScriptCreators
@@ -479,10 +481,13 @@ namespace OpenSim.Region.CoreModules.World.Permissions
479 481
480 if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero) 482 if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero)
481 { 483 {
482 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user) 484 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user && m_RegionOwnerIsGod)
483 return true; 485 return true;
484 } 486 }
485 487
488 if (IsEstateManager(user) && m_RegionManagerIsGod)
489 return true;
490
486 if (m_allowGridGods) 491 if (m_allowGridGods)
487 { 492 {
488 UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, user); 493 UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, user);
@@ -495,6 +500,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
495 500
496 return false; 501 return false;
497 } 502 }
503
498 protected bool IsFriendWithPerms(UUID user,UUID objectOwner) 504 protected bool IsFriendWithPerms(UUID user,UUID objectOwner)
499 { 505 {
500 506
@@ -896,9 +902,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
896 DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name); 902 DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name);
897 if (m_bypassPermissions) return m_bypassPermissionsValue; 903 if (m_bypassPermissions) return m_bypassPermissionsValue;
898 904
899 if (IsEstateManager(user) && m_RegionOwnerIsGod)
900 return true;
901
902 return IsAdministrator(user); 905 return IsAdministrator(user);
903 } 906 }
904 907