From 50e7059597cc068aa83b5be2585310be152ee12d Mon Sep 17 00:00:00 2001 From: C0D3 M4513R <28912031+C0D3-M4513R@users.noreply.github.com> Date: Wed, 18 Oct 2023 05:57:22 +0200 Subject: [PATCH] Add null checks to ip check on login Supersedes: #41 Fixes: #39 --- .../antivpn/bukkit/BukkitListener.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java b/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java index 9d30b9d..0977dc7 100644 --- a/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java +++ b/Bukkit/src/main/java/dev/brighten/antivpn/bukkit/BukkitListener.java @@ -19,6 +19,8 @@ import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitTask; +import java.net.InetAddress; +import java.net.InetSocketAddress; import java.util.UUID; import java.util.concurrent.TimeUnit; import java.util.logging.Level; @@ -116,13 +118,17 @@ public class BukkitListener extends VPNExecutor implements Listener { event.getPlayer().getUniqueId().toString()); return; } - - //If the IP is whitelisted, we don't want to kick them - if(AntiVPN.getInstance().getExecutor().isWhitelisted(event.getPlayer().getAddress().getAddress() - .getHostAddress())) { - log("IP is whitelisted: %s", - event.getPlayer().getAddress().getAddress().getHostAddress()); - return; + { + //If the IP is whitelisted, we don't want to kick them + InetSocketAddress address = event.getPlayer().getAddress(); + if (address != null){ + InetAddress address1 = address.getAddress(); + if (address1 != null && AntiVPN.getInstance().getExecutor().isWhitelisted(address1.getHostAddress())) { + log("IP is whitelisted: %s", + address1.getHostAddress()); + return; + } + } } // If the countryList() size is zero, no need to check.