diff --git a/Patch/0001-add-god-user-list-to-region-config.patch b/Patch/0001-add-god-user-list-to-region-config.patch new file mode 100644 index 0000000..baf5417 --- /dev/null +++ b/Patch/0001-add-god-user-list-to-region-config.patch @@ -0,0 +1,52 @@ +From eec1a14e5c4a25fd1f575f9c38ac96500cd0e14f Mon Sep 17 00:00:00 2001 +From: Chris +Date: Wed, 16 Dec 2020 02:10:34 +0100 +Subject: [PATCH 1/1] add god user list to region config + +--- + .../World/Permissions/PermissionsModule.cs | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +index 2d15e0a530..9c4d5fc19a 100644 +--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs ++++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +@@ -94,6 +94,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions + private bool m_forceGridAdminsOnly; + private bool m_forceAdminModeAlwaysOn; + private bool m_allowAdminActionsWithoutGodMode; ++ private List m_godAgentList = new List(); + + /// + /// The set of users that are allowed to create scripts. This is only active if permissions are not being +@@ -244,6 +245,17 @@ namespace OpenSim.Region.CoreModules.World.Permissions + GrantYP.Add(uuid, true); + } + } ++ ++ grant = Util.GetConfigVarFromSections(config, "agent_list_is_god", ++ new string[] { "Startup", "Permissions" }, string.Empty); ++ if (grant.Length > 0) ++ { ++ foreach (string uuidl in grant.Split(',')) ++ { ++ string uuid = uuidl.Trim(); ++ m_godAgentList.Add(uuid); ++ } ++ } + } + + public void AddRegion(Scene scene) +@@ -633,6 +645,9 @@ namespace OpenSim.Region.CoreModules.World.Permissions + if (m_RegionManagerIsAdmin && IsEstateManager(user)) + return true; + ++ if (m_godAgentList.Contains(user.ToString())) ++ return true; ++ + if (IsGridAdministrator(user)) + return true; + +-- +2.29.2.windows.3 +