aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-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 68e8485..5b15065 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -127,6 +127,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
127 private bool m_debugPermissions = false; 127 private bool m_debugPermissions = false;
128 private bool m_allowGridGods = false; 128 private bool m_allowGridGods = false;
129 private bool m_RegionOwnerIsGod = false; 129 private bool m_RegionOwnerIsGod = false;
130 private bool m_RegionManagerIsGod = false;
130 private bool m_ParcelOwnerIsGod = false; 131 private bool m_ParcelOwnerIsGod = false;
131 132
132 /// <value> 133 /// <value>
@@ -167,6 +168,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
167 m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false); 168 m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false);
168 m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true); 169 m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true);
169 m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true); 170 m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true);
171 m_RegionManagerIsGod = myConfig.GetBoolean("region_manager_is_god", false);
170 m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true); 172 m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true);
171 173
172 m_allowedScriptCreators 174 m_allowedScriptCreators
@@ -528,10 +530,13 @@ namespace OpenSim.Region.CoreModules.World.Permissions
528 530
529 if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero) 531 if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero)
530 { 532 {
531 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user) 533 if (m_scene.RegionInfo.EstateSettings.EstateOwner == user && m_RegionOwnerIsGod)
532 return true; 534 return true;
533 } 535 }
534 536
537 if (IsEstateManager(user) && m_RegionManagerIsGod)
538 return true;
539
535 if (m_allowGridGods) 540 if (m_allowGridGods)
536 { 541 {
537 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user); 542 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user);
@@ -544,6 +549,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
544 549
545 return false; 550 return false;
546 } 551 }
552
547 protected bool IsFriendWithPerms(UUID user,UUID objectOwner) 553 protected bool IsFriendWithPerms(UUID user,UUID objectOwner)
548 { 554 {
549 555
@@ -948,9 +954,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
948 DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name); 954 DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name);
949 if (m_bypassPermissions) return m_bypassPermissionsValue; 955 if (m_bypassPermissions) return m_bypassPermissionsValue;
950 956
951 if (IsEstateManager(user) && m_RegionOwnerIsGod)
952 return true;
953
954 return IsAdministrator(user); 957 return IsAdministrator(user);
955 } 958 }
956 959