diff options
Diffstat (limited to 'patches/removed/0280-Configurable-Unrestricted-Signs.patch')
-rw-r--r-- | patches/removed/0280-Configurable-Unrestricted-Signs.patch | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/patches/removed/0280-Configurable-Unrestricted-Signs.patch b/patches/removed/0280-Configurable-Unrestricted-Signs.patch deleted file mode 100644 index 3fc4d862d8..0000000000 --- a/patches/removed/0280-Configurable-Unrestricted-Signs.patch +++ /dev/null @@ -1,83 +0,0 @@ -From cbe35161f2e8a59c22aca9a0d5412674d128df41 Mon Sep 17 00:00:00 2001 -From: Aikar <[email protected]> -Date: Wed, 21 Mar 2018 19:57:10 -0400 -Subject: [PATCH] Configurable Unrestricted Signs - -Bukkit restricts command execution of signs to test if the sender -has permission to run the specified command. This breaks vanilla -maps that use signs to intentionally run as elevated permission. - -Bukkit provides an unrestricted advancements setting, so this setting -compliments that one and allows for unrestricted signs. - -We still filter sign update packets to strip out commands at edit phase, -however there is no sanity in ever expecting creative mode to not be -able to create signs with any command. - -Creative servers should absolutely never enable this. -Non creative servers, enable at own risk!!! - -diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 3f2c5b2d5..67bd3bcbe 100644 ---- a/src/main/java/net/minecraft/server/TileEntitySign.java -+++ b/src/main/java/net/minecraft/server/TileEntitySign.java -@@ -38,7 +38,7 @@ public class TileEntitySign extends TileEntity { - public void load(NBTTagCompound nbttagcompound) { - this.isEditable = false; - super.load(nbttagcompound); -- ICommandListener icommandlistener = new ICommandListener() { -+ ICommandListener icommandlistener = new ISignCommandListener() { // Paper - public String getName() { - return "Sign"; - } -@@ -125,7 +125,7 @@ public class TileEntitySign extends TileEntity { - } - - public boolean b(final EntityHuman entityhuman) { -- ICommandListener icommandlistener = new ICommandListener() { -+ ICommandListener icommandlistener = new ISignCommandListener() { // Paper - public String getName() { - return entityhuman.getName(); - } -@@ -200,4 +200,5 @@ public class TileEntitySign extends TileEntity { - public CommandObjectiveExecutor f() { - return this.i; - } -+ public interface ISignCommandListener extends ICommandListener {} // Paper - } -diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index e86c16755..6095948e8 100644 ---- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java -+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -175,6 +175,7 @@ public final class CraftServer implements Server { - private CraftIconCache icon; - private boolean overrideAllCommandBlockCommands = false; - private boolean unrestrictedAdvancements; -+ private boolean unrestrictedSignCommands; // Paper - private final List<CraftPlayer> playerView; - public int reloadCount; - public static Exception excessiveVelEx; // Paper - Velocity warnings -@@ -253,6 +254,12 @@ public final class CraftServer implements Server { - saveCommandsConfig(); - overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*"); - unrestrictedAdvancements = commandsConfiguration.getBoolean("unrestricted-advancements"); -+ // Paper start -+ unrestrictedSignCommands = commandsConfiguration.getBoolean("unrestricted-signs"); -+ if (unrestrictedSignCommands) { -+ logger.warning("Warning: Commands are no longer restricted on signs. If you allow players to use Creative Mode, there may be risk of players bypassing permissions. Use this setting at your own risk!!!!"); -+ } -+ // Paper end - pluginManager.useTimings(configuration.getBoolean("settings.plugin-profiling")); - monsterSpawn = configuration.getInt("spawn-limits.monsters"); - animalSpawn = configuration.getInt("spawn-limits.animals"); -@@ -270,6 +277,7 @@ public final class CraftServer implements Server { - listener = ((CommandListenerWrapper) listener).base; - } - -+ if (unrestrictedSignCommands && listener instanceof TileEntitySign.ISignCommandListener) return true; // Paper - return unrestrictedAdvancements && listener instanceof AdvancementRewards.AdvancementCommandListener; - } - --- -2.18.0 - |