Security bugfixes and improved debug messages
This commit is contained in:
parent
9351c0dfb7
commit
0dc694d29f
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>net.t2code</groupId>
|
<groupId>net.t2code</groupId>
|
||||||
<artifactId>T2C-OPSecurity</artifactId>
|
<artifactId>T2C-OPSecurity</artifactId>
|
||||||
<version>3.1.1_DEV-1</version>
|
<version>3.1.1</version>
|
||||||
|
|
||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
|
@ -2,13 +2,11 @@ package net.t2code.opsecurity.API;
|
|||||||
|
|
||||||
import net.t2code.opsecurity.check.OpCheck;
|
import net.t2code.opsecurity.check.OpCheck;
|
||||||
import net.t2code.opsecurity.check.PermissionCheck;
|
import net.t2code.opsecurity.check.PermissionCheck;
|
||||||
import net.t2code.opsecurity.config.config.Config;
|
|
||||||
import net.t2code.opsecurity.config.opWhitelist.OPWhitelist;
|
import net.t2code.opsecurity.config.opWhitelist.OPWhitelist;
|
||||||
import net.t2code.opsecurity.config.permissionWhitelist.PermissionWhitelist;
|
import net.t2code.opsecurity.config.permissionWhitelist.PermissionWhitelist;
|
||||||
import net.t2code.opsecurity.objects.PlayerCache;
|
import net.t2code.opsecurity.objects.PlayerCache;
|
||||||
import net.t2code.opsecurity.objects.PlayerObject;
|
import net.t2code.opsecurity.objects.PlayerObject;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@ -22,9 +20,9 @@ public class T2COpSecAPI {
|
|||||||
return OpCheck.opWhitelist(player,debug);
|
return OpCheck.opWhitelist(player,debug);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean checkPermissionWhiteList(Player player) {
|
public static boolean checkPermissionWhiteList(Player player, String debug) {
|
||||||
if (!PermissionWhitelist.enable.valueBoolean) return true;
|
if (!PermissionWhitelist.enable.valueBoolean) return true;
|
||||||
return PermissionCheck.permWhitelist(player);
|
return PermissionCheck.permWhitelist(player, debug);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static T2COpSecAPIPlayerStatus detailCheckOPWhiteList(Player player) {
|
public static T2COpSecAPIPlayerStatus detailCheckOPWhiteList(Player player) {
|
||||||
|
@ -9,6 +9,7 @@ import net.t2code.opsecurity.objects.PlayerObject;
|
|||||||
import net.t2code.opsecurity.system.BungeeSenderReceiver;
|
import net.t2code.opsecurity.system.BungeeSenderReceiver;
|
||||||
import net.t2code.opsecurity.system.Main;
|
import net.t2code.opsecurity.system.Main;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.commands.T2Ccmd;
|
import net.t2code.t2codelib.SPIGOT.api.commands.T2Ccmd;
|
||||||
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
@ -91,15 +92,16 @@ public class OpCheck {
|
|||||||
|
|
||||||
public static Boolean opWhitelist(Player player, String debug) {
|
public static Boolean opWhitelist(Player player, String debug) {
|
||||||
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getOpHashMap().entrySet()) {
|
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getOpHashMap().entrySet()) {
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] --------- " + player.getName());
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] --------- " + player.getName()+" ---------");
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] opWhitelist playerObject Name: " + playerObject.getValue().playerName);
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] opWhitelist playerObject Name: " + playerObject.getValue().playerName);
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player Name: " + player.getName());
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player Name: " + player.getName());
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] opWhitelist playerObject UUID: " + playerObject.getValue().uuid);
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] opWhitelist playerObject UUID: " + playerObject.getValue().uuid);
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player UUID: " + player.getUniqueId().toString().replace("-", ""));
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player UUID: " + player.getUniqueId().toString().replace("-", ""));
|
||||||
if (playerObject.getValue().playerName.equals(player.getName()) && playerObject.getValue().uuid.equals(player.getUniqueId().toString().replace("-", ""))) {
|
if (playerObject.getValue().playerName.equals(player.getName()) && playerObject.getValue().uuid.equals(player.getUniqueId().toString().replace("-", ""))) {
|
||||||
T2Csend.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player on list!");
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] opWhitelist Player on list!");
|
||||||
|
T2Cdebug.debug(Main.getPlugin(),"");
|
||||||
return true;
|
return true;
|
||||||
}
|
} else T2Cdebug.debug(Main.getPlugin(),"");
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ import net.t2code.opsecurity.objects.PlayerObject;
|
|||||||
import net.t2code.opsecurity.system.BungeeSenderReceiver;
|
import net.t2code.opsecurity.system.BungeeSenderReceiver;
|
||||||
import net.t2code.opsecurity.system.Main;
|
import net.t2code.opsecurity.system.Main;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.commands.T2Ccmd;
|
import net.t2code.t2codelib.SPIGOT.api.commands.T2Ccmd;
|
||||||
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
@ -20,7 +21,8 @@ public class PermissionCheck {
|
|||||||
if (!PermissionWhitelist.enable.valueBoolean) return false;
|
if (!PermissionWhitelist.enable.valueBoolean) return false;
|
||||||
for (String perm : PermissionWhitelist.permissions.valueStringList) {
|
for (String perm : PermissionWhitelist.permissions.valueStringList) {
|
||||||
if (!player.hasPermission(perm)) return false;
|
if (!player.hasPermission(perm)) return false;
|
||||||
if (permWhitelist(player)) return false;
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] check Permission: " + perm);
|
||||||
|
if (permWhitelist(player, debug)) return false;
|
||||||
Bukkit.getScheduler().runTask(Main.getPlugin(), new Runnable() {
|
Bukkit.getScheduler().runTask(Main.getPlugin(), new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@ -33,19 +35,21 @@ public class PermissionCheck {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void execute(Player player, Boolean join, String perm, String debug) {
|
private static void execute(Player player, Boolean join, String perm, String debug) {
|
||||||
if (join) T2Csend.console("["+debug+ "]" +Language.permissionWhitelistNotifyKick.value.replace("[player]", player.getName()).replace("[uuid]",String.valueOf(player.getUniqueId())));
|
if (join)
|
||||||
|
T2Csend.console("[" + debug + "]" + Language.permissionWhitelistNotifyKick.value.replace("[player]", player.getName()).replace("[uuid]", String.valueOf(player.getUniqueId())));
|
||||||
if (Config.notifyJoinWarning.valueBoolean && join) {
|
if (Config.notifyJoinWarning.valueBoolean && join) {
|
||||||
if (Config.notifyBungee.valueBoolean) {
|
if (Config.notifyBungee.valueBoolean) {
|
||||||
BungeeSenderReceiver.sendToBungee(Language.permissionWhitelistNotifyOnJoin.value.replace("[player]", player.getName()).replace("[uuid]",String.valueOf(player.getUniqueId())));
|
BungeeSenderReceiver.sendToBungee(Language.permissionWhitelistNotifyOnJoin.value.replace("[player]", player.getName()).replace("[uuid]", String.valueOf(player.getUniqueId())));
|
||||||
} else Events.notifyPlayer(Language.permissionWhitelistNotifyOnJoin.value.replace("[player]", player.getName()).replace("[uuid]",String.valueOf(player.getUniqueId())));
|
} else
|
||||||
|
Events.notifyPlayer(Language.permissionWhitelistNotifyOnJoin.value.replace("[player]", player.getName()).replace("[uuid]", String.valueOf(player.getUniqueId())));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PermissionWhitelist.playerWithPermissionKick.valueBoolean) {
|
if (PermissionWhitelist.playerWithPermissionKick.valueBoolean) {
|
||||||
if (Config.kickCustomCommand.valueBoolean) {
|
if (Config.kickCustomCommand.valueBoolean) {
|
||||||
T2Ccmd.console(Config.kickCommand.valueString.replace("[perm]", perm).replace("[player]", player.getName()).replace("[reason]", Language.permissionWhitelistKick.value));
|
T2Ccmd.console(Config.kickCommand.valueString.replace("[perm]", perm).replace("[player]", player.getName()).replace("[reason]", Language.permissionWhitelistKick.value));
|
||||||
} else player.kickPlayer(Language.permissionWhitelistKick.value);
|
} else player.kickPlayer(Language.permissionWhitelistKick.value);
|
||||||
T2Csend.console("["+debug+ "]" +Language.permissionWhitelistNotifyKick.value.replace("[player]",
|
T2Csend.console("[" + debug + "]" + Language.permissionWhitelistNotifyKick.value.replace("[player]",
|
||||||
player.getName()).replace("[perm]", perm).replace("[uuid]",String.valueOf(player.getUniqueId())));
|
player.getName()).replace("[perm]", perm).replace("[uuid]", String.valueOf(player.getUniqueId())));
|
||||||
}
|
}
|
||||||
if (PermissionWhitelist.customCommandsEnable.valueBoolean) {
|
if (PermissionWhitelist.customCommandsEnable.valueBoolean) {
|
||||||
for (String cmd : PermissionWhitelist.customCommandsCommands.valueStringList) {
|
for (String cmd : PermissionWhitelist.customCommandsCommands.valueStringList) {
|
||||||
@ -54,18 +58,19 @@ public class PermissionCheck {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Boolean permWhitelist(Player player) {
|
public static Boolean permWhitelist(Player player, String debug) {
|
||||||
|
|
||||||
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getPermissionHashMap().entrySet()) {
|
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getPermissionHashMap().entrySet()) {
|
||||||
T2Csend.debug(Main.getPlugin(), "--------- " + player.getName());
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] --------- " + player.getName() + " ---------");
|
||||||
T2Csend.debug(Main.getPlugin(),"permWhitelist playerObject Name: "+playerObject.getValue().playerName );
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] permWhitelist playerObject Name: " + playerObject.getValue().playerName);
|
||||||
T2Csend.debug(Main.getPlugin(),"permWhitelist Player Name: "+player.getName() );
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] permWhitelist Player Name: " + player.getName());
|
||||||
T2Csend.debug(Main.getPlugin(),"permWhitelist playerObject UUID: "+playerObject.getValue().uuid );
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] permWhitelist playerObject UUID: " + playerObject.getValue().uuid);
|
||||||
T2Csend.debug(Main.getPlugin(),"permWhitelist Player UUID: "+player.getUniqueId().toString().replace("-","") );
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] permWhitelist Player UUID: " + player.getUniqueId().toString().replace("-", ""));
|
||||||
if (playerObject.getValue().playerName.equals(player.getName()) && playerObject.getValue().uuid.equals(player.getUniqueId().toString().replace("-",""))){
|
if (playerObject.getValue().playerName.equals(player.getName()) && playerObject.getValue().uuid.equals(player.getUniqueId().toString().replace("-", ""))) {
|
||||||
T2Csend.debug(Main.getPlugin(),"permWhitelist Player on list!");
|
T2Cdebug.debug(Main.getPlugin(), "[" + debug + "] permWhitelist Player on list!");
|
||||||
|
T2Cdebug.debug(Main.getPlugin(), "");
|
||||||
return true;
|
return true;
|
||||||
}
|
} else T2Cdebug.debug(Main.getPlugin(), "");
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ import net.t2code.opsecurity.config.permissionWhitelist.PermissionWhitelist;
|
|||||||
import net.t2code.opsecurity.objects.PlayerCache;
|
import net.t2code.opsecurity.objects.PlayerCache;
|
||||||
import net.t2code.opsecurity.objects.PlayerObject;
|
import net.t2code.opsecurity.objects.PlayerObject;
|
||||||
import net.t2code.opsecurity.system.Main;
|
import net.t2code.opsecurity.system.Main;
|
||||||
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Creplace;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Creplace;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
||||||
import net.t2code.t2codelib.SPIGOT.system.config.languages.SelectLibMsg;
|
import net.t2code.t2codelib.SPIGOT.system.config.languages.SelectLibMsg;
|
||||||
@ -84,7 +85,7 @@ public class FileSelect {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
T2Csend.debug(Main.getPlugin(), "save: " + language);
|
T2Cdebug.debug(Main.getPlugin(), "save: " + language);
|
||||||
try {
|
try {
|
||||||
yamlConfiguration.save(config);
|
yamlConfiguration.save(config);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@ -94,7 +95,7 @@ public class FileSelect {
|
|||||||
|
|
||||||
String selectMSG;
|
String selectMSG;
|
||||||
File config = new File(Main.getPath(), "languages/" + Config.language.valueString + ".yml");
|
File config = new File(Main.getPath(), "languages/" + Config.language.valueString + ".yml");
|
||||||
T2Csend.debug(Main.getPlugin(), config.getAbsolutePath());
|
T2Cdebug.debug(Main.getPlugin(), config.getAbsolutePath());
|
||||||
if (!config.isFile()) {
|
if (!config.isFile()) {
|
||||||
T2Csend.console(Util.getPrefix());
|
T2Csend.console(Util.getPrefix());
|
||||||
T2Csend.console(Util.getPrefix() + " §4!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
T2Csend.console(Util.getPrefix() + " §4!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||||
@ -108,7 +109,7 @@ public class FileSelect {
|
|||||||
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config);
|
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config);
|
||||||
|
|
||||||
for (Language value : Language.values()) {
|
for (Language value : Language.values()) {
|
||||||
T2Csend.debug(Main.getPlugin(), "Select: File: " + config.getName() + " Path: " + value.path);
|
T2Cdebug.debug(Main.getPlugin(), "Select: File: " + config.getName() + " Path: " + value.path);
|
||||||
value.value = T2Creplace.replace(Util.getPrefix(), yamlConfiguration.getString(value.path));
|
value.value = T2Creplace.replace(Util.getPrefix(), yamlConfiguration.getString(value.path));
|
||||||
}
|
}
|
||||||
T2Csend.console(Util.getPrefix() + " §2Language successfully selected to: §6" + selectMSG + " §7- §e" + (System.currentTimeMillis() - long_) + "ms");
|
T2Csend.console(Util.getPrefix() + " §2Language successfully selected to: §6" + selectMSG + " §7- §e" + (System.currentTimeMillis() - long_) + "ms");
|
||||||
|
@ -6,6 +6,7 @@ import net.t2code.opsecurity.enums.OpCommandRequest;
|
|||||||
import net.t2code.opsecurity.objects.PlayerCache;
|
import net.t2code.opsecurity.objects.PlayerCache;
|
||||||
import net.t2code.opsecurity.objects.PlayerObject;
|
import net.t2code.opsecurity.objects.PlayerObject;
|
||||||
import net.t2code.opsecurity.system.Main;
|
import net.t2code.opsecurity.system.Main;
|
||||||
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.player.T2CnameHistory;
|
import net.t2code.t2codelib.SPIGOT.api.player.T2CnameHistory;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
@ -79,13 +80,13 @@ public class OpCommand implements Listener {
|
|||||||
|
|
||||||
private static Boolean opWhitelist(String playerName, String playerUuid) {
|
private static Boolean opWhitelist(String playerName, String playerUuid) {
|
||||||
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getOpHashMap().entrySet()) {
|
for (Map.Entry<String, PlayerObject> playerObject : PlayerCache.getOpHashMap().entrySet()) {
|
||||||
T2Csend.debug(Main.getPlugin(), "--------- " + playerName);
|
T2Cdebug.debug(Main.getPlugin(), "--------- " + playerName);
|
||||||
T2Csend.debug(Main.getPlugin(),"opWhitelist (op command) playerObject Name: "+playerObject.getValue().playerName );
|
T2Cdebug.debug(Main.getPlugin(),"opWhitelist (op command) playerObject Name: "+playerObject.getValue().playerName );
|
||||||
T2Csend.debug(Main.getPlugin(),"opWhitelist (op command) Player Name: "+ playerName );
|
T2Cdebug.debug(Main.getPlugin(),"opWhitelist (op command) Player Name: "+ playerName );
|
||||||
T2Csend.debug(Main.getPlugin(),"opWhitelist (op command) playerObject UUID: "+playerObject.getValue().uuid );
|
T2Cdebug.debug(Main.getPlugin(),"opWhitelist (op command) playerObject UUID: "+playerObject.getValue().uuid );
|
||||||
T2Csend.debug(Main.getPlugin(),"opWhitelist (op command) Player UUID: "+ playerUuid );
|
T2Cdebug.debug(Main.getPlugin(),"opWhitelist (op command) Player UUID: "+ playerUuid );
|
||||||
if (playerObject.getValue().playerName.equals(playerName) && playerObject.getValue().uuid.equals(playerUuid.replace("-", ""))) {
|
if (playerObject.getValue().playerName.equals(playerName) && playerObject.getValue().uuid.equals(playerUuid.replace("-", ""))) {
|
||||||
T2Csend.debug(Main.getPlugin(),"opWhitelist (op command) on list!");
|
T2Cdebug.debug(Main.getPlugin(),"opWhitelist (op command) on list!");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package net.t2code.opsecurity.system;
|
package net.t2code.opsecurity.system;
|
||||||
|
|
||||||
import net.t2code.opsecurity.events.Events;
|
import net.t2code.opsecurity.events.Events;
|
||||||
|
import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug;
|
||||||
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
@ -27,7 +28,7 @@ public class BungeeSenderReceiver implements PluginMessageListener {
|
|||||||
@Override
|
@Override
|
||||||
public void onPluginMessageReceived(String channel, Player player, byte[] message) {
|
public void onPluginMessageReceived(String channel, Player player, byte[] message) {
|
||||||
DataInputStream stream = new DataInputStream(new ByteArrayInputStream(message));
|
DataInputStream stream = new DataInputStream(new ByteArrayInputStream(message));
|
||||||
T2Csend.debug(Main.getPlugin(), "stream: " + stream.toString());
|
T2Cdebug.debug(Main.getPlugin(), "stream: " + stream.toString());
|
||||||
try {
|
try {
|
||||||
String subChannel = stream.readUTF();
|
String subChannel = stream.readUTF();
|
||||||
String information = stream.readUTF();
|
String information = stream.readUTF();
|
||||||
|
Loading…
Reference in New Issue
Block a user