diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs index bdf314f..75d90f3 100644 --- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | |||
@@ -99,6 +99,9 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
99 | private bool m_allowGridGods = false; | 99 | private bool m_allowGridGods = false; |
100 | private bool m_RegionOwnerIsGod = false; | 100 | private bool m_RegionOwnerIsGod = false; |
101 | private bool m_RegionManagerIsGod = false; | 101 | private bool m_RegionManagerIsGod = false; |
102 | private bool m_forceGridGodsOnly; | ||
103 | private bool m_forceGodModeAlwaysOn; | ||
104 | private bool m_allowGodActionsWithoutGodMode; | ||
102 | 105 | ||
103 | private bool m_SimpleBuildPermissions = false; | 106 | private bool m_SimpleBuildPermissions = false; |
104 | 107 | ||
@@ -167,19 +170,27 @@ namespace OpenSim.Region.CoreModules.World.Permissions | |||
167 | 170 | ||
168 | m_Enabled = true; | 171 | m_Enabled = true; |
169 | 172 | ||
170 | m_allowGridGods = Util.GetConfigVarFromSections<bool>(config, "allow_grid_gods", | 173 | string[] sections = new string[] { "Startup", "Permissions" }; |
171 | new string[] { "Startup", "Permissions" }, false); | 174 | |
172 | m_bypassPermissions = !Util.GetConfigVarFromSections<bool>(config, "serverside_object_permissions", | 175 | m_allowGridGods = Util.GetConfigVarFromSections<bool>(config, "allow_grid_gods", sections, false); |
173 | new string[] { "Startup", "Permissions" }, true); | 176 | m_bypassPermissions = !Util.GetConfigVarFromSections<bool>(config, "serverside_object_permissions", sections, true); |
174 | m_propagatePermissions = Util.GetConfigVarFromSections<bool>(config, "propagate_permissions", | 177 | m_propagatePermissions = Util.GetConfigVarFromSections<bool>(config, "propagate_permissions", sections, true); |
175 | new string[] { "Startup", "Permissions" }, true); | 178 | |
176 | m_RegionOwnerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_owner_is_god", | 179 | m_forceGridGodsOnly = Util.GetConfigVarFromSections<bool>(config, "force_grid_gods_only", sections, false); |
177 | new string[] { "Startup", "Permissions" }, true); | 180 | if(!m_forceGridGodsOnly) |
178 | m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god", | 181 | { |
179 | new string[] { "Startup", "Permissions" }, false); | 182 | m_RegionOwnerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_owner_is_god",sections, true); |
180 | 183 | m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god",sections, false); | |
181 | m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions", | 184 | } |
182 | new string[] { "Startup", "Permissions" }, false); | 185 | else |
186 | m_allowGridGods = true; | ||
187 | |||
188 | m_forceGodModeAlwaysOn = Util.GetConfigVarFromSections<bool>(config, "automatic_gods", sections, false); | ||
189 | m_allowGodActionsWithoutGodMode = Util.GetConfigVarFromSections<bool>(config, "implicit_gods", sections, false); | ||
190 | if(m_allowGodActionsWithoutGodMode) | ||
191 | m_forceGodModeAlwaysOn = false; | ||
192 | |||
193 | m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions",sections, false); | ||
183 | 194 | ||
184 | m_allowedScriptCreators | 195 | m_allowedScriptCreators |
185 | = ParseUserSetConfigSetting(config, "allowed_script_creators", m_allowedScriptCreators); | 196 | = ParseUserSetConfigSetting(config, "allowed_script_creators", m_allowedScriptCreators); |