diff options
author | Melanie Thielker | 2008-08-15 13:13:39 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-08-15 13:13:39 +0000 |
commit | dfc553d0a4c25d6c1f491b228e89402c0415acda (patch) | |
tree | 63653f47cc17365ec828f2e5507b7fd75c0388be /OpenSim/Region/Environment/Modules/World/Estate | |
parent | Minor formatting cleanup. (diff) | |
download | opensim-SC_OLD-dfc553d0a4c25d6c1f491b228e89402c0415acda.zip opensim-SC_OLD-dfc553d0a4c25d6c1f491b228e89402c0415acda.tar.gz opensim-SC_OLD-dfc553d0a4c25d6c1f491b228e89402c0415acda.tar.bz2 opensim-SC_OLD-dfc553d0a4c25d6c1f491b228e89402c0415acda.tar.xz |
Fix up master avatar handling for estate owners. Introduces a new
hierarchical rights structure. MasterAvatar: Owner of the region server
(may be null), net gods (users with GodLevel 200), Estate owner
(from database). Look at Opensim.ini.example to enable net gods.
Estate owner will default to master avatar.
Diffstat (limited to 'OpenSim/Region/Environment/Modules/World/Estate')
-rw-r--r-- | OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs index d22aac6..1e622be 100644 --- a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs +++ b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs | |||
@@ -212,6 +212,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
212 | { | 212 | { |
213 | // EstateAccessDelta handles Estate Managers, Sim Access, Sim Banlist, allowed Groups.. etc. | 213 | // EstateAccessDelta handles Estate Managers, Sim Access, Sim Banlist, allowed Groups.. etc. |
214 | 214 | ||
215 | if (user == m_scene.RegionInfo.EstateSettings.EstateOwner) | ||
216 | return; // never process EO | ||
215 | if (user == m_scene.RegionInfo.MasterAvatarAssignedUUID) | 217 | if (user == m_scene.RegionInfo.MasterAvatarAssignedUUID) |
216 | return; // never process owner | 218 | return; // never process owner |
217 | 219 | ||
@@ -557,7 +559,10 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
557 | 559 | ||
558 | args.regionFlags = GetRegionFlags(); | 560 | args.regionFlags = GetRegionFlags(); |
559 | args.regionName = m_scene.RegionInfo.RegionName; | 561 | args.regionName = m_scene.RegionInfo.RegionName; |
560 | args.SimOwner = m_scene.RegionInfo.MasterAvatarAssignedUUID; | 562 | if (m_scene.RegionInfo.EstateSettings.EstateOwner != LLUUID.Zero) |
563 | args.SimOwner = m_scene.RegionInfo.EstateSettings.EstateOwner; | ||
564 | else | ||
565 | args.SimOwner = m_scene.RegionInfo.MasterAvatarAssignedUUID; | ||
561 | args.terrainBase0 = LLUUID.Zero; | 566 | args.terrainBase0 = LLUUID.Zero; |
562 | args.terrainBase1 = LLUUID.Zero; | 567 | args.terrainBase1 = LLUUID.Zero; |
563 | args.terrainBase2 = LLUUID.Zero; | 568 | args.terrainBase2 = LLUUID.Zero; |
@@ -811,6 +816,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate | |||
811 | { | 816 | { |
812 | if (avatarID == m_scene.RegionInfo.MasterAvatarAssignedUUID) | 817 | if (avatarID == m_scene.RegionInfo.MasterAvatarAssignedUUID) |
813 | return true; | 818 | return true; |
819 | if (avatarID == m_scene.RegionInfo.EstateSettings.EstateOwner) | ||
820 | return true; | ||
814 | 821 | ||
815 | List<LLUUID> ems = new List<LLUUID>(m_scene.RegionInfo.EstateSettings.EstateManagers); | 822 | List<LLUUID> ems = new List<LLUUID>(m_scene.RegionInfo.EstateSettings.EstateManagers); |
816 | if (ems.Contains(avatarID)) | 823 | if (ems.Contains(avatarID)) |