diff --git a/lib/Spigot.jar b/lib/Spigot.jar index ca22c791f..a9be4209f 100644 Binary files a/lib/Spigot.jar and b/lib/Spigot.jar differ diff --git a/pom.xml b/pom.xml index 47c69ba5d..4651a7104 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ org.spigotmc spigot - 1.8-R0.1-SNAPSHOT + 1.8.3 system ${project.basedir}/lib/Spigot.jar diff --git a/src/main/java/fr/xephi/authme/AuthMe.java b/src/main/java/fr/xephi/authme/AuthMe.java index 7606e8032..84f26ba1c 100644 --- a/src/main/java/fr/xephi/authme/AuthMe.java +++ b/src/main/java/fr/xephi/authme/AuthMe.java @@ -9,6 +9,7 @@ import java.io.OutputStream; import java.net.URL; import java.net.URLConnection; import java.util.Calendar; +import java.util.Collection; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -30,6 +31,7 @@ import org.bukkit.entity.Player; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.RegisteredServiceProvider; import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.scheduler.BukkitTask; import com.earth2me.essentials.Essentials; import com.maxmind.geoip.LookupService; @@ -200,7 +202,6 @@ public class AuthMe extends JavaPlugin { switch (Settings.getDataSource) { case FILE: FlatFileThread fileThread = new FlatFileThread(); - fileThread.start(); database = fileThread; databaseThread = fileThread; final int a = database.getAccountsRegistered(); @@ -276,7 +277,7 @@ public class AuthMe extends JavaPlugin { if (Settings.reloadSupport) try { onReload(); - if (server.getOnlinePlayers().length < 1) { + if (server.getOnlinePlayers().size() < 1) { try { database.purgeLogged(); } catch (NullPointerException npe) { @@ -446,7 +447,7 @@ public class AuthMe extends JavaPlugin { @Override public void onDisable() { - if (Bukkit.getOnlinePlayers().length != 0) + if (Bukkit.getOnlinePlayers().size() != 0) for (Player player : Bukkit.getOnlinePlayers()) { this.savePlayer(player); } @@ -478,8 +479,8 @@ public class AuthMe extends JavaPlugin { try { if (Bukkit.getServer().getOnlinePlayers() != null) { for (Player player : Bukkit.getServer().getOnlinePlayers()) { - if (database.isLogged(player.getName())) { - String name = player.getName(); + if (database.isLogged(player.getName().toLowerCase())) { + String name = player.getName().toLowerCase(); PlayerAuth pAuth = database.getAuth(name); if (pAuth == null) break; @@ -508,9 +509,9 @@ public class AuthMe extends JavaPlugin { } catch (Exception e) { } try { - String name = player.getName(); + String name = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(name) && !player.isDead() && Settings.isSaveQuitLocationEnabled) { - final PlayerAuth auth = new PlayerAuth(player.getName(), player.getLocation().getX(), player.getLocation().getY(), player.getLocation().getZ(), player.getWorld().getName()); + final PlayerAuth auth = new PlayerAuth(player.getName().toLowerCase(), player.getLocation().getX(), player.getLocation().getY(), player.getLocation().getZ(), player.getWorld().getName()); database.updateQuitLoc(auth); } if (LimboCache.getInstance().hasLimboPlayer(name)) { @@ -548,19 +549,19 @@ public class AuthMe extends JavaPlugin { return m; } - public Player generateKickPlayer(Player[] players) { + public Player generateKickPlayer(Collection collection) { Player player = null; int i; - for (i = 0; i <= players.length; i++) { + for (Player p : collection) { Random rdm = new Random(); - int a = rdm.nextInt(players.length); - if (!(authmePermissible(players[a], "authme.vip"))) { - player = players[a]; + int a = rdm.nextInt(collection.size()); + if (!(authmePermissible(p, "authme.vip"))) { + player = p; break; } } if (player == null) { - for (Player p : players) { + for (Player p : collection) { if (!(authmePermissible(p, "authme.vip"))) { player = p; break; @@ -654,7 +655,7 @@ public class AuthMe extends JavaPlugin { } private Location getAuthMeSpawn(Player player) { - if ((!database.isAuthAvailable(player.getName()) || !player.hasPlayedBefore()) && (Spawn.getInstance().getFirstSpawn() != null)) + if ((!database.isAuthAvailable(player.getName().toLowerCase()) || !player.hasPlayedBefore()) && (Spawn.getInstance().getFirstSpawn() != null)) return Spawn.getInstance().getFirstSpawn(); if (Spawn.getInstance().getSpawn() != null) return Spawn.getInstance().getSpawn(); @@ -726,7 +727,7 @@ public class AuthMe extends JavaPlugin { public void run() { for (Player player : Bukkit.getOnlinePlayers()) { if (player.isOnline()) { - String name = player.getName(); + String name = player.getName().toLowerCase(); if (database.isAuthAvailable(name)) if (PlayerCache.getInstance().isAuthenticated(name)) { String email = database.getAuth(name).getEmail(); @@ -743,7 +744,7 @@ public class AuthMe extends JavaPlugin { try { message = message.replace("&", "\u00a7"); message = message.replace("{PLAYER}", player.getName()); - message = message.replace("{ONLINE}", "" + this.getServer().getOnlinePlayers().length); + message = message.replace("{ONLINE}", "" + this.getServer().getOnlinePlayers().size()); message = message.replace("{MAXPLAYERS}", "" + this.getServer().getMaxPlayers()); message = message.replace("{IP}", getIP(player)); message = message.replace("{LOGINS}", "" + PlayerCache.getInstance().getLogged()); @@ -757,7 +758,7 @@ public class AuthMe extends JavaPlugin { } public String getIP(Player player) { - String name = player.getName(); + String name = player.getName().toLowerCase(); String ip = player.getAddress().getAddress().getHostAddress(); if (Settings.bungee) { if (realIp.containsKey(name)) @@ -772,7 +773,7 @@ public class AuthMe extends JavaPlugin { public boolean isLoggedIp(String name, String ip) { int count = 0; for (Player player : this.getServer().getOnlinePlayers()) { - if (ip.equalsIgnoreCase(getIP(player)) && database.isLogged(player.getName()) && !player.getName().equalsIgnoreCase(name)) + if (ip.equalsIgnoreCase(getIP(player)) && database.isLogged(player.getName().toLowerCase()) && !player.getName().equalsIgnoreCase(name)) count++; } if (count >= Settings.getMaxLoginPerIp) diff --git a/src/main/java/fr/xephi/authme/DataManager.java b/src/main/java/fr/xephi/authme/DataManager.java index b43231291..9d651c216 100644 --- a/src/main/java/fr/xephi/authme/DataManager.java +++ b/src/main/java/fr/xephi/authme/DataManager.java @@ -25,17 +25,12 @@ public class DataManager extends Thread { public OfflinePlayer getOfflinePlayer(String name) { OfflinePlayer result = null; try { - if (org.bukkit.Bukkit.class.getMethod("getOfflinePlayer", new Class[] { String.class }).isAnnotationPresent(Deprecated.class)) { - for (OfflinePlayer op : Bukkit.getOfflinePlayers()) - if (op.getName().equalsIgnoreCase(name)) { - result = op; - break; - } - } else { - result = Bukkit.getOfflinePlayer(name); - } + for (OfflinePlayer op : Bukkit.getOfflinePlayers()) + if (op.getName().equalsIgnoreCase(name)) { + result = op; + break; + } } catch (Exception e) { - result = Bukkit.getOfflinePlayer(name); } return result; } diff --git a/src/main/java/fr/xephi/authme/Utils.java b/src/main/java/fr/xephi/authme/Utils.java index a4c941bcf..9c9eff9ef 100644 --- a/src/main/java/fr/xephi/authme/Utils.java +++ b/src/main/java/fr/xephi/authme/Utils.java @@ -69,7 +69,7 @@ public class Utils { case LOGGEDIN: { if (!useGroupSystem()) break; - LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(name); + LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(name.toLowerCase()); if (limbo == null) break; String realGroup = limbo.getGroup(); diff --git a/src/main/java/fr/xephi/authme/api/API.java b/src/main/java/fr/xephi/authme/api/API.java index 50cc8181f..75220e7f4 100644 --- a/src/main/java/fr/xephi/authme/api/API.java +++ b/src/main/java/fr/xephi/authme/api/API.java @@ -86,7 +86,7 @@ public class API { public static Location getLastLocation(Player player) { try { - PlayerAuth auth = PlayerCache.getInstance().getAuth(player.getName()); + PlayerAuth auth = PlayerCache.getInstance().getAuth(player.getName().toLowerCase()); if (auth != null) { Location loc = new Location(Bukkit.getWorld(auth.getWorld()), auth.getQuitLocX(), auth.getQuitLocY(), auth.getQuitLocZ()); @@ -115,7 +115,7 @@ public class API { * @return true if player is registered */ public static boolean isRegistered(String playerName) { - String player = playerName; + String player = playerName.toLowerCase(); return database.isAuthAvailable(player); } @@ -128,7 +128,7 @@ public class API { String passwordToCheck) { if (!isRegistered(playerName)) return false; - String player = playerName; + String player = playerName.toLowerCase(); PlayerAuth auth = database.getAuth(player); try { return PasswordSecurity.comparePasswordWithHash(passwordToCheck, auth.getHash(), playerName); @@ -146,7 +146,7 @@ public class API { */ public static boolean registerPlayer(String playerName, String password) { try { - String name = playerName; + String name = playerName.toLowerCase(); String hash = PasswordSecurity.getHash(Settings.getPasswordHash, password, name); if (isRegistered(name)) { return false; diff --git a/src/main/java/fr/xephi/authme/cache/limbo/LimboCache.java b/src/main/java/fr/xephi/authme/cache/limbo/LimboCache.java index 2a35e9912..0c9bb2d66 100644 --- a/src/main/java/fr/xephi/authme/cache/limbo/LimboCache.java +++ b/src/main/java/fr/xephi/authme/cache/limbo/LimboCache.java @@ -29,7 +29,7 @@ public class LimboCache { } public void addLimboPlayer(Player player) { - String name = player.getName(); + String name = player.getName().toLowerCase(); Location loc = player.getLocation(); GameMode gameMode = player.getGameMode(); ItemStack[] arm; @@ -95,7 +95,7 @@ public class LimboCache { } public void addLimboPlayer(Player player, String group) { - cache.put(player.getName(), new LimboPlayer(player.getName(), group)); + cache.put(player.getName().toLowerCase(), new LimboPlayer(player.getName().toLowerCase(), group)); } public void deleteLimboPlayer(String name) { @@ -118,8 +118,8 @@ public class LimboCache { } public void updateLimboPlayer(Player player) { - if (this.hasLimboPlayer(player.getName())) { - this.deleteLimboPlayer(player.getName()); + if (this.hasLimboPlayer(player.getName().toLowerCase())) { + this.deleteLimboPlayer(player.getName().toLowerCase()); } this.addLimboPlayer(player); } diff --git a/src/main/java/fr/xephi/authme/commands/AdminCommand.java b/src/main/java/fr/xephi/authme/commands/AdminCommand.java index 755d2a515..c7735d65c 100644 --- a/src/main/java/fr/xephi/authme/commands/AdminCommand.java +++ b/src/main/java/fr/xephi/authme/commands/AdminCommand.java @@ -161,8 +161,8 @@ public class AdminCommand implements CommandExecutor { return true; } try { - if (database.getAuth(args[1]) != null) { - PlayerAuth player = database.getAuth(args[1]); + if (database.getAuth(args[1].toLowerCase()) != null) { + PlayerAuth player = database.getAuth(args[1].toLowerCase()); long lastLogin = player.getLastLogin(); Date d = new Date(lastLogin); final long diff = System.currentTimeMillis() - lastLogin; @@ -195,7 +195,7 @@ public class AdminCommand implements CommandExecutor { PlayerAuth pAuth = null; String message = "[AuthMe] "; try { - pAuth = database.getAuth(arguments[1]); + pAuth = database.getAuth(arguments[1].toLowerCase()); } catch (NullPointerException npe) { fSender.sendMessage("[AuthMe] This player is unknown"); return; @@ -273,7 +273,7 @@ public class AdminCommand implements CommandExecutor { return true; } try { - String name = args[1]; + String name = args[1].toLowerCase(); if (database.isAuthAvailable(name)) { m._(sender, "user_regged"); return true; @@ -299,7 +299,7 @@ public class AdminCommand implements CommandExecutor { sender.sendMessage("Usage: /authme getemail playername"); return true; } - String playername = args[1]; + String playername = args[1].toLowerCase(); PlayerAuth getAuth = database.getAuth(playername); if (getAuth == null) { m._(sender, "unknown_user"); @@ -312,7 +312,7 @@ public class AdminCommand implements CommandExecutor { sender.sendMessage("Usage: /authme chgemail playername email"); return true; } - String playername = args[1]; + String playername = args[1].toLowerCase(); PlayerAuth getAuth = database.getAuth(playername); if (getAuth == null) { m._(sender, "unknown_user"); @@ -355,7 +355,7 @@ public class AdminCommand implements CommandExecutor { } else if (args[0].equalsIgnoreCase("purgebannedplayers")) { List bannedPlayers = new ArrayList(); for (OfflinePlayer off : plugin.getServer().getBannedPlayers()) { - bannedPlayers.add(off.getName()); + bannedPlayers.add(off.getName().toLowerCase()); } database.purgeBanned(bannedPlayers); if (Settings.purgeEssentialsFile && plugin.ess != null) @@ -399,7 +399,7 @@ public class AdminCommand implements CommandExecutor { return true; } try { - String name = args[1]; + String name = args[1].toLowerCase(); String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name); PlayerAuth auth = null; if (PlayerCache.getInstance().isAuthenticated(name)) { @@ -432,7 +432,7 @@ public class AdminCommand implements CommandExecutor { sender.sendMessage("Usage: /authme unregister playername"); return true; } - String name = args[1]; + String name = args[1].toLowerCase(); if (!database.isAuthAvailable(name)) { m._(sender, "user_unknown"); return true; @@ -481,7 +481,7 @@ public class AdminCommand implements CommandExecutor { return true; } try { - String name = args[1]; + String name = args[1].toLowerCase(); PlayerAuth auth = database.getAuth(name); if (auth == null) { sender.sendMessage("The player " + name + " is not registered "); diff --git a/src/main/java/fr/xephi/authme/commands/CaptchaCommand.java b/src/main/java/fr/xephi/authme/commands/CaptchaCommand.java index 05bd9f867..9e58cc8f1 100644 --- a/src/main/java/fr/xephi/authme/commands/CaptchaCommand.java +++ b/src/main/java/fr/xephi/authme/commands/CaptchaCommand.java @@ -30,7 +30,7 @@ public class CaptchaCommand implements CommandExecutor { } Player player = (Player) sender; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (args.length == 0) { m._(player, "usage_captcha"); diff --git a/src/main/java/fr/xephi/authme/commands/ChangePasswordCommand.java b/src/main/java/fr/xephi/authme/commands/ChangePasswordCommand.java index 6b3b0d2df..e6fe61d16 100644 --- a/src/main/java/fr/xephi/authme/commands/ChangePasswordCommand.java +++ b/src/main/java/fr/xephi/authme/commands/ChangePasswordCommand.java @@ -42,7 +42,7 @@ public class ChangePasswordCommand implements CommandExecutor { } Player player = (Player) sender; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (!PlayerCache.getInstance().isAuthenticated(name)) { m._(player, "not_logged_in"); return true; diff --git a/src/main/java/fr/xephi/authme/commands/LogoutCommand.java b/src/main/java/fr/xephi/authme/commands/LogoutCommand.java index 06a669e9e..cf35f1cdd 100644 --- a/src/main/java/fr/xephi/authme/commands/LogoutCommand.java +++ b/src/main/java/fr/xephi/authme/commands/LogoutCommand.java @@ -56,7 +56,7 @@ public class LogoutCommand implements CommandExecutor { } final Player player = (Player) sender; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (!PlayerCache.getInstance().isAuthenticated(name)) { m._(player, "not_logged_in"); diff --git a/src/main/java/fr/xephi/authme/commands/PasspartuCommand.java b/src/main/java/fr/xephi/authme/commands/PasspartuCommand.java index 74e7e8857..51c3dc23b 100644 --- a/src/main/java/fr/xephi/authme/commands/PasspartuCommand.java +++ b/src/main/java/fr/xephi/authme/commands/PasspartuCommand.java @@ -33,7 +33,7 @@ public class PasspartuCommand implements CommandExecutor { return true; } - if (PlayerCache.getInstance().isAuthenticated(sender.getName())) { + if (PlayerCache.getInstance().isAuthenticated(sender.getName().toLowerCase())) { return true; } diff --git a/src/main/java/fr/xephi/authme/commands/UnregisterCommand.java b/src/main/java/fr/xephi/authme/commands/UnregisterCommand.java index 2cf1d49c6..3d5876391 100644 --- a/src/main/java/fr/xephi/authme/commands/UnregisterCommand.java +++ b/src/main/java/fr/xephi/authme/commands/UnregisterCommand.java @@ -55,7 +55,7 @@ public class UnregisterCommand implements CommandExecutor { } Player player = (Player) sender; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (!PlayerCache.getInstance().isAuthenticated(name)) { m._(player, "not_logged_in"); @@ -84,7 +84,7 @@ public class UnregisterCommand implements CommandExecutor { player.getInventory().setContents(new ItemStack[36]); player.getInventory().setArmorContents(new ItemStack[4]); player.saveData(); - PlayerCache.getInstance().removePlayer(player.getName()); + PlayerCache.getInstance().removePlayer(player.getName().toLowerCase()); if (!Settings.getRegisteredGroup.isEmpty()) Utils.getInstance().setGroup(player, groupType.UNREGISTERED); LimboCache.getInstance().addLimboPlayer(player); @@ -106,7 +106,7 @@ public class UnregisterCommand implements CommandExecutor { if (!Settings.unRegisteredGroup.isEmpty()) { Utils.getInstance().setGroup(player, Utils.groupType.UNREGISTERED); } - PlayerCache.getInstance().removePlayer(player.getName()); + PlayerCache.getInstance().removePlayer(player.getName().toLowerCase()); // check if Player cache File Exist and delete it, preventing // duplication of items if (playerCache.doesCacheExist(player)) { diff --git a/src/main/java/fr/xephi/authme/converter/CrazyLoginConverter.java b/src/main/java/fr/xephi/authme/converter/CrazyLoginConverter.java index 3e5706946..fdd8e34f0 100644 --- a/src/main/java/fr/xephi/authme/converter/CrazyLoginConverter.java +++ b/src/main/java/fr/xephi/authme/converter/CrazyLoginConverter.java @@ -57,7 +57,7 @@ public class CrazyLoginConverter implements Converter { continue; if (args[0].equalsIgnoreCase("name")) continue; - String player = args[0]; + String player = args[0].toLowerCase(); String psw = args[1]; try { if (player != null && psw != null) { diff --git a/src/main/java/fr/xephi/authme/converter/RoyalAuthConverter.java b/src/main/java/fr/xephi/authme/converter/RoyalAuthConverter.java index f50794405..c39984d8b 100644 --- a/src/main/java/fr/xephi/authme/converter/RoyalAuthConverter.java +++ b/src/main/java/fr/xephi/authme/converter/RoyalAuthConverter.java @@ -31,7 +31,7 @@ public class RoyalAuthConverter implements Converter { if (!file.exists()) continue; RoyalAuthYamlReader ra = new RoyalAuthYamlReader(file); - PlayerAuth auth = new PlayerAuth(o.getName(), ra.getHash(), "127.0.0.1", ra.getLastLogin(), "your@email.com"); + PlayerAuth auth = new PlayerAuth(name, ra.getHash(), "127.0.0.1", ra.getLastLogin(), "your@email.com"); data.saveAuth(auth); } catch (Exception e) { ConsoleLogger.showError("Error while trying to import " + o.getName() + " RoyalAuth datas"); diff --git a/src/main/java/fr/xephi/authme/converter/newxAuthToFlat.java b/src/main/java/fr/xephi/authme/converter/newxAuthToFlat.java index 31374c021..5f2dcb516 100644 --- a/src/main/java/fr/xephi/authme/converter/newxAuthToFlat.java +++ b/src/main/java/fr/xephi/authme/converter/newxAuthToFlat.java @@ -72,7 +72,7 @@ public class newxAuthToFlat { rs = ps.executeQuery(); if (!rs.next()) return null; - realPass = rs.getString("playername"); + realPass = rs.getString("playername").toLowerCase(); } catch (SQLException e) { xAuthLog.severe("Failed to retrieve name for account: " + id, e); return null; diff --git a/src/main/java/fr/xephi/authme/converter/oldxAuthToFlat.java b/src/main/java/fr/xephi/authme/converter/oldxAuthToFlat.java index 1b3a64a3e..89b9abcd0 100644 --- a/src/main/java/fr/xephi/authme/converter/oldxAuthToFlat.java +++ b/src/main/java/fr/xephi/authme/converter/oldxAuthToFlat.java @@ -77,7 +77,7 @@ public class oldxAuthToFlat { rs = ps.executeQuery(); if (!rs.next()) return null; - realPass = rs.getString("playername"); + realPass = rs.getString("playername").toLowerCase(); } catch (SQLException e) { xAuthLog.severe("Failed to retrieve name for account: " + id, e); return null; diff --git a/src/main/java/fr/xephi/authme/converter/vAuthFileReader.java b/src/main/java/fr/xephi/authme/converter/vAuthFileReader.java index 62fdd27a9..55cbec588 100644 --- a/src/main/java/fr/xephi/authme/converter/vAuthFileReader.java +++ b/src/main/java/fr/xephi/authme/converter/vAuthFileReader.java @@ -47,9 +47,9 @@ public class vAuthFileReader { } if (pname == null) continue; - auth = new PlayerAuth(pname, password, "127.0.0.1", System.currentTimeMillis(), "your@email.com"); + auth = new PlayerAuth(pname.toLowerCase(), password, "127.0.0.1", System.currentTimeMillis(), "your@email.com"); } else { - auth = new PlayerAuth(name, password, "127.0.0.1", System.currentTimeMillis(), "your@email.com"); + auth = new PlayerAuth(name.toLowerCase(), password, "127.0.0.1", System.currentTimeMillis(), "your@email.com"); } if (auth != null) database.saveAuth(auth); diff --git a/src/main/java/fr/xephi/authme/datasource/CacheDataSource.java b/src/main/java/fr/xephi/authme/datasource/CacheDataSource.java index 0e5726fe0..524652c55 100644 --- a/src/main/java/fr/xephi/authme/datasource/CacheDataSource.java +++ b/src/main/java/fr/xephi/authme/datasource/CacheDataSource.java @@ -22,13 +22,14 @@ public class CacheDataSource implements DataSource { @Override public synchronized boolean isAuthAvailable(String user) { - if (cache.containsKey(user)) + if (cache.containsKey(user.toLowerCase())) return true; - return source.isAuthAvailable(user); + return source.isAuthAvailable(user.toLowerCase()); } @Override public synchronized PlayerAuth getAuth(String user) { + user = user.toLowerCase(); if (cache.containsKey(user)) { return cache.get(user); } else { @@ -134,7 +135,7 @@ public class CacheDataSource implements DataSource { cache.clear(); source.reload(); for (Player player : plugin.getServer().getOnlinePlayers()) { - String user = player.getName(); + String user = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(user)) { try { PlayerAuth auth = source.getAuth(user); @@ -198,17 +199,17 @@ public class CacheDataSource implements DataSource { @Override public boolean isLogged(String user) { - return source.isLogged(user); + return source.isLogged(user.toLowerCase()); } @Override public void setLogged(String user) { - source.setLogged(user); + source.setLogged(user.toLowerCase()); } @Override public void setUnlogged(String user) { - source.setUnlogged(user); + source.setUnlogged(user.toLowerCase()); } @Override diff --git a/src/main/java/fr/xephi/authme/datasource/FlatFileThread.java b/src/main/java/fr/xephi/authme/datasource/FlatFileThread.java index 34d666aed..ce5ef47a0 100644 --- a/src/main/java/fr/xephi/authme/datasource/FlatFileThread.java +++ b/src/main/java/fr/xephi/authme/datasource/FlatFileThread.java @@ -651,17 +651,17 @@ public class FlatFileThread extends Thread implements DataSource { @Override public boolean isLogged(String user) { - return PlayersLogs.getInstance().players.contains(user); + return PlayersLogs.getInstance().players.contains(user.toLowerCase()); } @Override public void setLogged(String user) { - PlayersLogs.getInstance().addPlayer(user); + PlayersLogs.getInstance().addPlayer(user.toLowerCase()); } @Override public void setUnlogged(String user) { - PlayersLogs.getInstance().removePlayer(user); + PlayersLogs.getInstance().removePlayer(user.toLowerCase()); } @Override diff --git a/src/main/java/fr/xephi/authme/datasource/MySQLThread.java b/src/main/java/fr/xephi/authme/datasource/MySQLThread.java index ebc9997fd..c57a123d4 100644 --- a/src/main/java/fr/xephi/authme/datasource/MySQLThread.java +++ b/src/main/java/fr/xephi/authme/datasource/MySQLThread.java @@ -188,7 +188,8 @@ public class MySQLThread extends Thread implements DataSource { } } - @Override + @SuppressWarnings("resource") + @Override public synchronized PlayerAuth getAuth(String user) { Connection con = null; PreparedStatement pst = null; @@ -203,14 +204,14 @@ public class MySQLThread extends Thread implements DataSource { if (rs.next()) { id = rs.getInt(columnID); if (rs.getString(columnIp).isEmpty() && rs.getString(columnIp) != null) { - pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); + pAuth = new PlayerAuth(rs.getString(columnName).toLowerCase(), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); } else { if (!columnSalt.isEmpty()) { if (!columnGroup.isEmpty()) - pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); - else pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); + pAuth = new PlayerAuth(rs.getString(columnName).toLowerCase(), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); + else pAuth = new PlayerAuth(rs.getString(columnName).toLowerCase(), rs.getString(columnPassword), rs.getString(columnSalt), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); } else { - pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); + pAuth = new PlayerAuth(rs.getString(columnName).toLowerCase(), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail)); } } if (Settings.getPasswordHash == HashAlgorithm.XENFORO) { diff --git a/src/main/java/fr/xephi/authme/datasource/SQLiteThread.java b/src/main/java/fr/xephi/authme/datasource/SQLiteThread.java index e846e1d6d..b7289341d 100644 --- a/src/main/java/fr/xephi/authme/datasource/SQLiteThread.java +++ b/src/main/java/fr/xephi/authme/datasource/SQLiteThread.java @@ -508,17 +508,17 @@ public class SQLiteThread extends Thread implements DataSource { @Override public boolean isLogged(String user) { - return PlayersLogs.getInstance().players.contains(user); + return PlayersLogs.getInstance().players.contains(user.toLowerCase()); } @Override public void setLogged(String user) { - PlayersLogs.getInstance().addPlayer(user); + PlayersLogs.getInstance().addPlayer(user.toLowerCase()); } @Override public void setUnlogged(String user) { - PlayersLogs.getInstance().removePlayer(user); + PlayersLogs.getInstance().removePlayer(user.toLowerCase()); } @Override diff --git a/src/main/java/fr/xephi/authme/listener/AuthMeBlockListener.java b/src/main/java/fr/xephi/authme/listener/AuthMeBlockListener.java index 93b9b3316..d706f0953 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMeBlockListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMeBlockListener.java @@ -29,7 +29,7 @@ public class AuthMeBlockListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; @@ -54,13 +54,13 @@ public class AuthMeBlockListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; } - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(name)) { return; } diff --git a/src/main/java/fr/xephi/authme/listener/AuthMeChestShopListener.java b/src/main/java/fr/xephi/authme/listener/AuthMeChestShopListener.java index e16698db2..ae3c41aa2 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMeChestShopListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMeChestShopListener.java @@ -31,7 +31,7 @@ public class AuthMeChestShopListener implements Listener { } Player player = event.getClient(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; diff --git a/src/main/java/fr/xephi/authme/listener/AuthMeEntityListener.java b/src/main/java/fr/xephi/authme/listener/AuthMeEntityListener.java index 0438d62e2..3ab513679 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMeEntityListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMeEntityListener.java @@ -48,7 +48,7 @@ public class AuthMeEntityListener implements Listener { return; Player player = (Player) entity; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (CombatTagComunicator.isNPC(player)) return; @@ -83,7 +83,7 @@ public class AuthMeEntityListener implements Listener { return; Player player = (Player) entity; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(name)) { return; @@ -111,7 +111,7 @@ public class AuthMeEntityListener implements Listener { } Player player = (Player) entity; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(name)) { return; @@ -135,7 +135,7 @@ public class AuthMeEntityListener implements Listener { return; Player player = (Player) entity; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(name)) { return; @@ -166,7 +166,7 @@ public class AuthMeEntityListener implements Listener { return; Player player = (Player) entity; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (PlayerCache.getInstance().isAuthenticated(name)) { return; @@ -193,7 +193,7 @@ public class AuthMeEntityListener implements Listener { } Player player = (Player) event.getEntity(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; @@ -225,7 +225,7 @@ public class AuthMeEntityListener implements Listener { } Player player = (Player) event.getEntity(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; diff --git a/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java b/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java index 5567c17f2..20279b827 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java @@ -86,7 +86,7 @@ public class AuthMePlayerListener implements Listener { return; Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -121,7 +121,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -158,7 +158,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -195,7 +195,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -232,7 +232,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -269,7 +269,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -307,7 +307,7 @@ public class AuthMePlayerListener implements Listener { return; final Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) return; @@ -343,7 +343,7 @@ public class AuthMePlayerListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; @@ -384,22 +384,7 @@ public class AuthMePlayerListener implements Listener { public void onPlayerLogin(PlayerLoginEvent event) { final Player player = event.getPlayer(); - final String lowname = player.getName().toLowerCase(); - final String name = player.getName(); - - if (!lowname.equals(name)) { - // Little workaround to be sure registered player is the same as this - if (player.hasPlayedBefore() && !player.isOnline()) - // Make sure it's the correct player - if (data.isAuthAvailable(lowname)) { - if (data.getAuth(lowname).getIp().equalsIgnoreCase(player.getAddress().getAddress().getHostAddress())) { - data.updateName(lowname, name); - } else { - event.setResult(PlayerLoginEvent.Result.KICK_OTHER); - event.setKickMessage(m._("same_nick")[0]); - } - } - } + final String name = player.getName().toLowerCase(); if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; @@ -436,7 +421,7 @@ public class AuthMePlayerListener implements Listener { if (!Settings.isSessionsEnabled) { } else if (PlayerCache.getInstance().isAuthenticated(name)) { if (!Settings.sessionExpireOnIpChange) - if (LimboCache.getInstance().hasLimboPlayer(player.getName())) { + if (LimboCache.getInstance().hasLimboPlayer(player.getName().toLowerCase())) { LimboCache.getInstance().deleteLimboPlayer(name); } } @@ -444,11 +429,11 @@ public class AuthMePlayerListener implements Listener { // Check if forceSingleSession is set to true, so kick player that has // joined with same nick of online player if (player.isOnline() && Settings.isForceSingleSessionEnabled) { - LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName()); + LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName().toLowerCase()); event.disallow(PlayerLoginEvent.Result.KICK_OTHER, m._("same_nick")[0]); - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { utils.addNormal(player, limbo.getGroup()); - LimboCache.getInstance().deleteLimboPlayer(player.getName()); + LimboCache.getInstance().deleteLimboPlayer(player.getName().toLowerCase()); } return; } @@ -507,7 +492,7 @@ public class AuthMePlayerListener implements Listener { return; } - if (plugin.getServer().getOnlinePlayers().length > plugin.getServer().getMaxPlayers()) { + if (plugin.getServer().getOnlinePlayers().size() > plugin.getServer().getMaxPlayers()) { event.allow(); return; } else { @@ -547,12 +532,12 @@ public class AuthMePlayerListener implements Listener { }, Settings.antiBotDuration * 1200); return; } - antibot.put(event.getPlayer().getName(), event); + antibot.put(event.getPlayer().getName().toLowerCase(), event); Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { @Override public void run() { - antibot.remove(event.getPlayer().getName()); + antibot.remove(event.getPlayer().getName().toLowerCase()); } }, 300); } @@ -563,7 +548,7 @@ public class AuthMePlayerListener implements Listener { return; } Player player = event.getPlayer(); - final String name = player.getName(); + final String name = player.getName().toLowerCase(); Location spawnLoc = plugin.getSpawnLocation(player); gm = player.getGameMode(); gameMode.put(name, gm); @@ -575,7 +560,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.ess != null && Settings.disableSocialSpy) { try { - plugin.ess.getUser(player.getName()).setSocialSpyEnabled(false); + plugin.ess.getUser(player.getName().toLowerCase()).setSocialSpyEnabled(false); } catch (Exception e) { } catch (NoSuchMethodError e) { } @@ -695,7 +680,7 @@ public class AuthMePlayerListener implements Listener { } if (Settings.protectInventoryBeforeLogInEnabled) { try { - LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName()); + LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName().toLowerCase()); ProtectInventoryEvent ev = new ProtectInventoryEvent(player, limbo.getInventory(), limbo.getArmour()); plugin.getServer().getPluginManager().callEvent(ev); if (ev.isCancelled()) { @@ -777,7 +762,7 @@ public class AuthMePlayerListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); Location loc = player.getLocation(); if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { @@ -855,7 +840,7 @@ public class AuthMePlayerListener implements Listener { return; } - String name = player.getName(); + String name = player.getName().toLowerCase(); String ip = plugin.getIP(player); if ((PlayerCache.getInstance().isAuthenticated(name)) && (!player.isDead())) { @@ -929,7 +914,7 @@ public class AuthMePlayerListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; @@ -938,7 +923,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.getCitizensCommunicator().isNPC(player, plugin)) return; - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -957,7 +942,7 @@ public class AuthMePlayerListener implements Listener { return; Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; @@ -966,7 +951,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.getCitizensCommunicator().isNPC(player, plugin)) return; - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -986,7 +971,7 @@ public class AuthMePlayerListener implements Listener { if (event.isCancelled() || event.getPlayer() == null) return; Player player = (Player) event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; @@ -995,7 +980,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.getCitizensCommunicator().isNPC(player, plugin)) return; - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -1015,7 +1000,7 @@ public class AuthMePlayerListener implements Listener { if (!(event.getWhoClicked() instanceof Player)) return; Player player = (Player) event.getWhoClicked(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; @@ -1024,7 +1009,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.getCitizensCommunicator().isNPC(player, plugin)) return; - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -1044,13 +1029,13 @@ public class AuthMePlayerListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; } - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -1068,7 +1053,7 @@ public class AuthMePlayerListener implements Listener { return; } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { return; @@ -1077,7 +1062,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.getCitizensCommunicator().isNPC(player, plugin)) return; - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -1095,13 +1080,13 @@ public class AuthMePlayerListener implements Listener { return; } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; } - if (PlayerCache.getInstance().isAuthenticated(player.getName())) { + if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { return; } @@ -1119,7 +1104,7 @@ public class AuthMePlayerListener implements Listener { return; } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player)) { return; } @@ -1141,7 +1126,7 @@ public class AuthMePlayerListener implements Listener { } Player player = event.getPlayer(); - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) return; @@ -1181,7 +1166,7 @@ public class AuthMePlayerListener implements Listener { if (plugin.authmePermissible(player, "authme.bypassforcesurvival")) return; - String name = player.getName(); + String name = player.getName().toLowerCase(); if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) return; diff --git a/src/main/java/fr/xephi/authme/listener/AuthMeSpoutListener.java b/src/main/java/fr/xephi/authme/listener/AuthMeSpoutListener.java index ecb44ab7a..0c0ec624b 100644 --- a/src/main/java/fr/xephi/authme/listener/AuthMeSpoutListener.java +++ b/src/main/java/fr/xephi/authme/listener/AuthMeSpoutListener.java @@ -20,7 +20,7 @@ public class AuthMeSpoutListener implements Listener { @EventHandler public void onSpoutCraftEnable(final SpoutCraftEnableEvent event) { if (SpoutCfg.getInstance().getBoolean("LoginScreen.enabled")) { - if (data.isAuthAvailable(event.getPlayer().getName()) && !PlayerCache.getInstance().isAuthenticated(event.getPlayer().getName())) { + if (data.isAuthAvailable(event.getPlayer().getName().toLowerCase()) && !PlayerCache.getInstance().isAuthenticated(event.getPlayer().getName().toLowerCase())) { event.getPlayer().getMainScreen().attachPopupScreen(new LoginScreen(event.getPlayer())); } } diff --git a/src/main/java/fr/xephi/authme/plugin/manager/BungeeCordMessage.java b/src/main/java/fr/xephi/authme/plugin/manager/BungeeCordMessage.java index cf3e2adcb..b10140775 100644 --- a/src/main/java/fr/xephi/authme/plugin/manager/BungeeCordMessage.java +++ b/src/main/java/fr/xephi/authme/plugin/manager/BungeeCordMessage.java @@ -28,7 +28,7 @@ public class BungeeCordMessage implements PluginMessageListener { String subchannel = in.readUTF(); if (subchannel.equals("IP")) { // We need only the IP channel String ip = in.readUTF(); - plugin.realIp.put(player.getName(), ip); + plugin.realIp.put(player.getName().toLowerCase(), ip); // Put the IP (only the ip not the port) in the hashmap } } catch (IOException ex) { diff --git a/src/main/java/fr/xephi/authme/process/login/AsyncronousLogin.java b/src/main/java/fr/xephi/authme/process/login/AsyncronousLogin.java index aad8cab30..c303e4feb 100644 --- a/src/main/java/fr/xephi/authme/process/login/AsyncronousLogin.java +++ b/src/main/java/fr/xephi/authme/process/login/AsyncronousLogin.java @@ -25,6 +25,7 @@ public class AsyncronousLogin { protected Player player; protected String name; + protected String realName; protected String password; protected boolean forceLogin; private AuthMe plugin; @@ -36,7 +37,8 @@ public class AsyncronousLogin { AuthMe plugin, DataSource data) { this.player = player; this.password = password; - name = player.getName(); + name = player.getName().toLowerCase(); + realName = player.getName(); this.forceLogin = forceLogin; this.plugin = plugin; this.database = data; @@ -124,7 +126,7 @@ public class AsyncronousLogin { boolean passwordVerified = true; if (!forceLogin) try { - passwordVerified = PasswordSecurity.comparePasswordWithHash(password, hash, name); + passwordVerified = PasswordSecurity.comparePasswordWithHash(password, hash, realName); } catch (Exception ex) { ConsoleLogger.showError(ex.getMessage()); m._(player, "error"); diff --git a/src/main/java/fr/xephi/authme/process/login/ProcessSyncronousPlayerLogin.java b/src/main/java/fr/xephi/authme/process/login/ProcessSyncronousPlayerLogin.java index 4fbb137c0..58951c5dd 100644 --- a/src/main/java/fr/xephi/authme/process/login/ProcessSyncronousPlayerLogin.java +++ b/src/main/java/fr/xephi/authme/process/login/ProcessSyncronousPlayerLogin.java @@ -40,7 +40,7 @@ public class ProcessSyncronousPlayerLogin implements Runnable { this.database = data; this.pm = plugin.getServer().getPluginManager(); this.player = player; - this.name = player.getName(); + this.name = player.getName().toLowerCase(); this.limbo = LimboCache.getInstance().getLimboPlayer(name); this.auth = database.getAuth(name); this.playerCache = new FileCache(plugin); diff --git a/src/main/java/fr/xephi/authme/process/register/AsyncronousRegister.java b/src/main/java/fr/xephi/authme/process/register/AsyncronousRegister.java index 6e6869ae7..b0c31e2a6 100644 --- a/src/main/java/fr/xephi/authme/process/register/AsyncronousRegister.java +++ b/src/main/java/fr/xephi/authme/process/register/AsyncronousRegister.java @@ -29,7 +29,7 @@ public class AsyncronousRegister { AuthMe plugin, DataSource data) { this.player = player; this.password = password; - name = player.getName(); + name = player.getName().toLowerCase(); this.email = email; this.plugin = plugin; this.database = data; @@ -57,10 +57,10 @@ public class AsyncronousRegister { allowRegister = false; } - if (database.isAuthAvailable(player.getName())) { + if (database.isAuthAvailable(name)) { m._(player, "user_regged"); - if (plugin.pllog.getStringList("players").contains(player.getName())) { - plugin.pllog.getStringList("players").remove(player.getName()); + if (plugin.pllog.getStringList("players").contains(name)) { + plugin.pllog.getStringList("players").remove(name); } allowRegister = false; } diff --git a/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousEmailRegister.java b/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousEmailRegister.java index 3753fe4dc..7d45763b9 100644 --- a/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousEmailRegister.java +++ b/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousEmailRegister.java @@ -22,7 +22,7 @@ public class ProcessSyncronousEmailRegister implements Runnable { public ProcessSyncronousEmailRegister(Player player, AuthMe plugin) { this.player = player; - this.name = player.getName(); + this.name = player.getName().toLowerCase(); this.plugin = plugin; } diff --git a/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousPasswordRegister.java b/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousPasswordRegister.java index 05e31d56b..1782ac622 100644 --- a/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousPasswordRegister.java +++ b/src/main/java/fr/xephi/authme/process/register/ProcessSyncronousPasswordRegister.java @@ -31,7 +31,7 @@ public class ProcessSyncronousPasswordRegister implements Runnable { public ProcessSyncronousPasswordRegister(Player player, AuthMe plugin) { this.player = player; - this.name = player.getName(); + this.name = player.getName().toLowerCase(); this.plugin = plugin; } diff --git a/src/main/java/fr/xephi/authme/settings/CustomConfiguration.java b/src/main/java/fr/xephi/authme/settings/CustomConfiguration.java index e1fee3f2f..f9c962da9 100644 --- a/src/main/java/fr/xephi/authme/settings/CustomConfiguration.java +++ b/src/main/java/fr/xephi/authme/settings/CustomConfiguration.java @@ -78,16 +78,6 @@ public class CustomConfiguration extends YamlConfiguration { Logger.getLogger(JavaPlugin.class.getName()).log(Level.SEVERE, "Failed to load config from JAR"); out = false; } - /* - * FileOutputStream fos = null; try { fos = new - * FileOutputStream(file); byte[] buf = new byte[1024]; int i = 0; - * while ((i = fis.read(buf)) != -1) { fos.write(buf, 0, i); } } - * catch (Exception e) { - * Logger.getLogger(JavaPlugin.class.getName()).log(Level.SEVERE, - * "Failed to load config from JAR"); out = false; } finally { try { - * if (fis != null) { fis.close(); } if (fos != null) { fos.close(); - * } } catch (Exception e) { } } } - */ } return out; } diff --git a/src/main/java/fr/xephi/authme/settings/PlayersLogs.java b/src/main/java/fr/xephi/authme/settings/PlayersLogs.java index 29076f4fe..b95d2098e 100644 --- a/src/main/java/fr/xephi/authme/settings/PlayersLogs.java +++ b/src/main/java/fr/xephi/authme/settings/PlayersLogs.java @@ -35,8 +35,8 @@ public class PlayersLogs extends CustomConfiguration { public void addPlayer(String user) { players = this.getStringList("players"); - if (!players.contains(user)) { - players.add(user); + if (!players.contains(user.toLowerCase())) { + players.add(user.toLowerCase()); set("players", players); save(); } @@ -44,8 +44,8 @@ public class PlayersLogs extends CustomConfiguration { public void removePlayer(String user) { players = this.getStringList("players"); - if (players.contains(user)) { - players.remove(user); + if (players.contains(user.toLowerCase())) { + players.remove(user.toLowerCase()); set("players", players); save(); } diff --git a/src/main/java/fr/xephi/authme/task/MessageTask.java b/src/main/java/fr/xephi/authme/task/MessageTask.java index 042619673..5a280751b 100644 --- a/src/main/java/fr/xephi/authme/task/MessageTask.java +++ b/src/main/java/fr/xephi/authme/task/MessageTask.java @@ -28,7 +28,7 @@ public class MessageTask implements Runnable { return; for (Player player : plugin.getServer().getOnlinePlayers()) { - if (player.getName().equals(name)) { + if (player.getName().toLowerCase().equals(name)) { for (String ms : msg) { player.sendMessage(ms); } diff --git a/src/main/java/fr/xephi/authme/task/TimeoutTask.java b/src/main/java/fr/xephi/authme/task/TimeoutTask.java index a930dd10d..faa5405f1 100644 --- a/src/main/java/fr/xephi/authme/task/TimeoutTask.java +++ b/src/main/java/fr/xephi/authme/task/TimeoutTask.java @@ -35,7 +35,7 @@ public class TimeoutTask implements Runnable { return; for (Player player : plugin.getServer().getOnlinePlayers()) { - if (player.getName().equals(name)) { + if (player.getName().toLowerCase().equals(name)) { if (LimboCache.getInstance().hasLimboPlayer(name)) { LimboPlayer inv = LimboCache.getInstance().getLimboPlayer(name); player.getServer().getScheduler().cancelTask(inv.getMessageTaskId());