53 lines
2.0 KiB
Diff
53 lines
2.0 KiB
Diff
From eec1a14e5c4a25fd1f575f9c38ac96500cd0e14f Mon Sep 17 00:00:00 2001
|
|
From: Chris <christopher@clatza.dev>
|
|
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<string> m_godAgentList = new List<string>();
|
|
|
|
/// <value>
|
|
/// 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<string>(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
|
|
|