From 54d3c80bdb6417f2a6f049d69f56c8e5d52dca0b Mon Sep 17 00:00:00 2001 From: Alexander Date: Mon, 28 Jun 2021 13:58:46 +0100 Subject: [PATCH 1/6] Update POM --- plugins/banstick-paper/pom.xml | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/plugins/banstick-paper/pom.xml b/plugins/banstick-paper/pom.xml index dd8e9812b..364148580 100644 --- a/plugins/banstick-paper/pom.xml +++ b/plugins/banstick-paper/pom.xml @@ -6,12 +6,11 @@ com.github.civclassic civclassic-parent - 1.0.0 + 1.0.1 - com.programmerdan.minecraft banstick - 1.2.3 + 1.3.0 BanStick https://github.com/Civclassic/BanStick @@ -20,30 +19,30 @@ - com.destroystokyo.paper + io.papermc.paper paper-api - 1.16.5-R0.1-SNAPSHOT + 1.17-R0.1-SNAPSHOT provided - vg.civcraft.mc.civmodcore + com.github.civclassic CivModCore - 1.8.2 + 1.9.0 provided - vg.civcraft.mc.namelayer + com.github.civclassic NameLayer - 2.14.1 + 2.15.0 provided com.github.seancfoley ipaddress - 2.0.2 + 5.3.3 From 840e65e8f75fa79dbed9a8bdf8d2b61796c90f5e Mon Sep 17 00:00:00 2001 From: Alexander Date: Mon, 28 Jun 2021 14:20:43 +0100 Subject: [PATCH 2/6] Comply with newer version of com.github.seancfoley:ipaddress --- .../banstick/commands/BanStickCommand.java | 4 ++-- .../banstick/commands/DoubleTapCommand.java | 7 +++---- .../banstick/commands/ForgiveCommand.java | 4 ++-- .../banstick/commands/LoveTapCommand.java | 6 +++--- .../minecraft/banstick/data/BSIP.java | 16 +++++++++------- .../banstick/handler/BanStickTorUpdater.java | 4 ++-- .../banstick/importer/IPAddressConverter.java | 7 +++++++ .../banstick/proxy/Cloud9ProxyLoader.java | 9 +++++---- .../banstick/scraper/ScrapeFreeProxyList.java | 4 ++-- 9 files changed, 35 insertions(+), 26 deletions(-) create mode 100644 plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java index 83bf7e996..152dc8378 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java @@ -4,9 +4,9 @@ import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.containers.BanResult; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.handler.BanHandler; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; import java.net.InetAddress; import java.net.InetSocketAddress; import java.text.ParseException; @@ -117,7 +117,7 @@ public class BanStickCommand implements CommandExecutor { result.informCommandSender(sender); return true; - } catch (IPAddressStringException e) { + } catch (AddressStringException e) { // Not an IP address! UUID playerId = null; if (toBan.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java index 56c60d329..1a6b737bd 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java @@ -7,10 +7,9 @@ import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSSession; import com.programmerdan.minecraft.banstick.data.BSShare; import com.programmerdan.minecraft.banstick.handler.BanHandler; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; -import inet.ipaddr.IPAddressTypeException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -63,7 +62,7 @@ public class DoubleTapCommand implements CommandExecutor { // check if IP path try { ipcheck = new IPAddressString(toBan).toAddress(); - } catch (IPAddressStringException | IPAddressTypeException e) { + } catch (AddressStringException e) { ipcheck = null; if (arguments.length < 2) { @@ -74,7 +73,7 @@ public class DoubleTapCommand implements CommandExecutor { secondDoBan = arguments[1].indexOf('+') > -1; secondBan = secondDoBan ? arguments[1].substring(1) : arguments[1]; } - + String endDate = (arguments.length >= (2 + offset) ? arguments[1 + offset] : null); String endTime = (arguments.length >= (3 + offset) ? arguments[2 + offset] : null); SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java index 180b647e9..e2a047a7c 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java @@ -5,9 +5,9 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSShare; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; import java.util.Arrays; import java.util.Date; import java.util.List; @@ -87,7 +87,7 @@ public class ForgiveCommand implements CommandExecutor { } return true; - } catch (IPAddressStringException e) { + } catch (AddressStringException e) { // Not an IP address! UUID playerId = null; if (toForgive.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java index c0b9648e5..67df32c52 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java @@ -7,9 +7,9 @@ import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSSession; import com.programmerdan.minecraft.banstick.data.BSShare; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; @@ -62,7 +62,7 @@ public class LoveTapCommand implements CommandExecutor { try { IPAddress ipcheck = new IPAddressString(toTap).toAddress(); if (ipcheck == null) { - throw new IPAddressStringException("Null -- but no error?"); + throw new AddressStringException("Null -- but no error?"); } if (!sender.hasPermission("banstick.ips")) { sender.sendMessage(ChatColor.RED + "You don't have permission to use / view IPs"); @@ -235,7 +235,7 @@ public class LoveTapCommand implements CommandExecutor { sender.sendMessage(sb.toString()); return true; - } catch (IPAddressStringException e) { + } catch (AddressStringException e) { // Not an IP address! UUID playerId = null; if (toTap.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java index b120947d5..d73e9c85e 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java @@ -2,6 +2,7 @@ package com.programmerdan.minecraft.banstick.data; import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.handler.BanStickDatabaseHandler; +import com.programmerdan.minecraft.banstick.importer.IPAddressConverter; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; import inet.ipaddr.ipv4.IPv4Address; @@ -28,6 +29,7 @@ import java.util.Map; * */ public final class BSIP { + private static Map allIPNA = new HashMap<>(); private static Map allIPId = new HashMap<>(); @@ -79,7 +81,7 @@ public final class BSIP { * @return All the subnet records that match it */ public static List allMatching(InetAddress netAddress) { - IPAddress lookup = IPAddress.from(netAddress); + IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); return allMatching(lookup); } @@ -127,7 +129,7 @@ public final class BSIP { */ public static List allContained(IPAddress lookup, int cidr) { List returns = new ArrayList<>(); - IPAddress newBase = lookup.toSubnet(cidr); + IPAddress newBase = lookup.toPrefixBlock(cidr); StringBuilder sb = new StringBuilder("SELECT * FROM bs_ip WHERE "); if (newBase.isIPv4()) { sb.append("ip4 LIKE \"").append(newBase.toSQLWildcardString()).append("\""); @@ -218,7 +220,7 @@ public final class BSIP { */ private static void fillFromCIDRs(IPAddress lookup, int maxCIDR, List matches) { for (int curCIDR = maxCIDR; curCIDR > 0; curCIDR--) { - BSIP prospect = byCIDR(lookup.toSubnet(curCIDR).getLower().toString(), curCIDR); + BSIP prospect = byCIDR(lookup.toPrefixBlock(curCIDR).getLower().toString(), curCIDR); if (prospect != null) { matches.add(prospect); } @@ -259,7 +261,7 @@ public final class BSIP { BanStick.getPlugin().severe("Unknown Inet address type: " + netAddress.toString()); return null; } - getIP.setString(1, lookup.toSubnet(cidr).getLower().toString()); + getIP.setString(1, lookup.toPrefixBlock(cidr).getLower().toString()); getIP.setInt(2, cidr); BSIP bsip = null; @@ -281,7 +283,7 @@ public final class BSIP { * @return The matching IP or null */ public static BSIP byInetAddress(InetAddress netAddress) { - IPAddress lookup = IPAddress.from(netAddress); + IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); return byIPAddress(lookup); } @@ -409,7 +411,7 @@ public final class BSIP { * @return a BSIP object, or null if failure. */ public static BSIP create(InetAddress netAddress) { - IPAddress lookup = IPAddress.from(netAddress); + IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); return create(lookup); } @@ -476,7 +478,7 @@ public final class BSIP { * @return a new BSIP or null if failed */ public static BSIP create(InetAddress netAddress, int cidr) { - IPAddress lookup = IPAddress.from(netAddress).toSubnet(cidr).getLower(); + IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress).toPrefixBlock(cidr).getLower(); return create(lookup, cidr); } diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java index 540b154c6..9b1165291 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java @@ -4,8 +4,8 @@ import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -173,7 +173,7 @@ tor: } } - } catch (NullPointerException | IPAddressStringException e) { + } catch (NullPointerException | AddressStringException e) { // quiet. errors ++; } diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java new file mode 100644 index 000000000..539834935 --- /dev/null +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java @@ -0,0 +1,7 @@ +package com.programmerdan.minecraft.banstick.importer; + +import inet.ipaddr.IPAddressNetwork; + +public final class IPAddressConverter { + public static final IPAddressNetwork.IPAddressGenerator INSTANCE = new IPAddressNetwork.IPAddressGenerator(); +} diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java index 3b6bed17f..5a4d57471 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java @@ -6,6 +6,7 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.handler.ProxyLoader; +import com.programmerdan.minecraft.banstick.importer.IPAddressConverter; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; import java.io.BufferedReader; @@ -89,14 +90,14 @@ public final class Cloud9ProxyLoader extends ProxyLoader { if (arr[0] == 0) { arr = Arrays.copyOfRange(arr, 1, arr.length); } - lowboundAddr = IPAddress.from(arr); + lowboundAddr = IPAddressConverter.INSTANCE.from(arr); } catch (IllegalArgumentException iae) { BanStick.getPlugin().debug("Failed on byte array {0}", start.toByteArray()); } int mask = lowboundAddr.isIPv4() ? 32 : 128; while (mask > 0) { - IPAddress maskAddr = lowboundAddr.toSubnet(mask - 1); + IPAddress maskAddr = lowboundAddr.toPrefixBlock(mask - 1); if (maskAddr.getLower().compareTo(lowboundAddr) != 0) { break; } @@ -109,8 +110,8 @@ public final class Cloud9ProxyLoader extends ProxyLoader { } BanStick.getPlugin().debug(" Found sub-CIDR: {0}", - lowboundAddr.toSubnet(mask).toCanonicalString()); - cidrFromRange.add(lowboundAddr.toSubnet(mask)); + lowboundAddr.toPrefixBlock(mask).toCanonicalString()); + cidrFromRange.add(lowboundAddr.toPrefixBlock(mask)); BigInteger migrate = BigInteger.valueOf(2).pow((lowboundAddr.isIPv4() ? 32 : 128) - mask); start = start.add(migrate); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java index 6f821b2c2..e73f5fe9a 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java @@ -5,9 +5,9 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.handler.ScraperWorker; +import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; -import inet.ipaddr.IPAddressStringException; import java.io.IOException; import java.util.Date; import java.util.List; @@ -136,7 +136,7 @@ public class ScrapeFreeProxyList extends ScraperWorker { : new Date(System.currentTimeMillis() + this.banLength), false); } } - } catch (IPAddressStringException iase) { + } catch (AddressStringException iase) { continue; } } From bd2c005f3bb020c056a93f395db6110268b7d33b Mon Sep 17 00:00:00 2001 From: Alexander Date: Mon, 28 Jun 2021 14:22:24 +0100 Subject: [PATCH 3/6] Comply with CivModCore updates --- .../java/com/programmerdan/minecraft/banstick/BanStick.java | 1 - .../minecraft/banstick/handler/BanStickEventHandler.java | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/BanStick.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/BanStick.java index 47afe8f0e..e3406953c 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/BanStick.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/BanStick.java @@ -35,7 +35,6 @@ public class BanStick extends ACivMod { @Override public void onEnable() { instance = this; - this.useNewCommandHandler = false; super.onEnable(); saveDefaultConfig(); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickEventHandler.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickEventHandler.java index e7c00b68f..243d4c6a9 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickEventHandler.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickEventHandler.java @@ -28,7 +28,7 @@ import org.bukkit.event.player.PlayerKickEvent; import org.bukkit.event.player.PlayerLoginEvent; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.scheduler.BukkitRunnable; -import vg.civcraft.mc.civmodcore.playersettings.AltRequestEvent; +import vg.civcraft.mc.civmodcore.players.settings.AltRequestEvent; import vg.civcraft.mc.namelayer.NameAPI; /** From 147f04ae9d272b3a3398a18b61714af663334886 Mon Sep 17 00:00:00 2001 From: Alexander Date: Fri, 2 Jul 2021 17:08:51 +0100 Subject: [PATCH 4/6] Revert ipaddress version update --- plugins/banstick-paper/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/banstick-paper/pom.xml b/plugins/banstick-paper/pom.xml index 364148580..235855e6c 100644 --- a/plugins/banstick-paper/pom.xml +++ b/plugins/banstick-paper/pom.xml @@ -42,7 +42,7 @@ com.github.seancfoley ipaddress - 5.3.3 + 2.0.2 From cbba17f7d1ee85e2c4a2a81e870a3317778399bc Mon Sep 17 00:00:00 2001 From: Alexander Date: Fri, 2 Jul 2021 17:14:31 +0100 Subject: [PATCH 5/6] Revert "Comply with newer version of com.github.seancfoley:ipaddress" This reverts commit 840e65e8f75fa79dbed9a8bdf8d2b61796c90f5e. --- .../banstick/commands/BanStickCommand.java | 4 ++-- .../banstick/commands/DoubleTapCommand.java | 7 ++++--- .../banstick/commands/ForgiveCommand.java | 4 ++-- .../banstick/commands/LoveTapCommand.java | 6 +++--- .../minecraft/banstick/data/BSIP.java | 16 +++++++--------- .../banstick/handler/BanStickTorUpdater.java | 4 ++-- .../banstick/importer/IPAddressConverter.java | 7 ------- .../banstick/proxy/Cloud9ProxyLoader.java | 9 ++++----- .../banstick/scraper/ScrapeFreeProxyList.java | 4 ++-- 9 files changed, 26 insertions(+), 35 deletions(-) delete mode 100644 plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java index 152dc8378..83bf7e996 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/BanStickCommand.java @@ -4,9 +4,9 @@ import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.containers.BanResult; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.handler.BanHandler; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; import java.net.InetAddress; import java.net.InetSocketAddress; import java.text.ParseException; @@ -117,7 +117,7 @@ public class BanStickCommand implements CommandExecutor { result.informCommandSender(sender); return true; - } catch (AddressStringException e) { + } catch (IPAddressStringException e) { // Not an IP address! UUID playerId = null; if (toBan.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java index 1a6b737bd..56c60d329 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/DoubleTapCommand.java @@ -7,9 +7,10 @@ import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSSession; import com.programmerdan.minecraft.banstick.data.BSShare; import com.programmerdan.minecraft.banstick.handler.BanHandler; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; +import inet.ipaddr.IPAddressTypeException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -62,7 +63,7 @@ public class DoubleTapCommand implements CommandExecutor { // check if IP path try { ipcheck = new IPAddressString(toBan).toAddress(); - } catch (AddressStringException e) { + } catch (IPAddressStringException | IPAddressTypeException e) { ipcheck = null; if (arguments.length < 2) { @@ -73,7 +74,7 @@ public class DoubleTapCommand implements CommandExecutor { secondDoBan = arguments[1].indexOf('+') > -1; secondBan = secondDoBan ? arguments[1].substring(1) : arguments[1]; } - + String endDate = (arguments.length >= (2 + offset) ? arguments[1 + offset] : null); String endTime = (arguments.length >= (3 + offset) ? arguments[2 + offset] : null); SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java index e2a047a7c..180b647e9 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/ForgiveCommand.java @@ -5,9 +5,9 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSShare; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; import java.util.Arrays; import java.util.Date; import java.util.List; @@ -87,7 +87,7 @@ public class ForgiveCommand implements CommandExecutor { } return true; - } catch (AddressStringException e) { + } catch (IPAddressStringException e) { // Not an IP address! UUID playerId = null; if (toForgive.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java index 67df32c52..c0b9648e5 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/commands/LoveTapCommand.java @@ -7,9 +7,9 @@ import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.data.BSPlayer; import com.programmerdan.minecraft.banstick.data.BSSession; import com.programmerdan.minecraft.banstick.data.BSShare; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; @@ -62,7 +62,7 @@ public class LoveTapCommand implements CommandExecutor { try { IPAddress ipcheck = new IPAddressString(toTap).toAddress(); if (ipcheck == null) { - throw new AddressStringException("Null -- but no error?"); + throw new IPAddressStringException("Null -- but no error?"); } if (!sender.hasPermission("banstick.ips")) { sender.sendMessage(ChatColor.RED + "You don't have permission to use / view IPs"); @@ -235,7 +235,7 @@ public class LoveTapCommand implements CommandExecutor { sender.sendMessage(sb.toString()); return true; - } catch (AddressStringException e) { + } catch (IPAddressStringException e) { // Not an IP address! UUID playerId = null; if (toTap.length() <= 16) { diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java index d73e9c85e..b120947d5 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/data/BSIP.java @@ -2,7 +2,6 @@ package com.programmerdan.minecraft.banstick.data; import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.handler.BanStickDatabaseHandler; -import com.programmerdan.minecraft.banstick.importer.IPAddressConverter; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; import inet.ipaddr.ipv4.IPv4Address; @@ -29,7 +28,6 @@ import java.util.Map; * */ public final class BSIP { - private static Map allIPNA = new HashMap<>(); private static Map allIPId = new HashMap<>(); @@ -81,7 +79,7 @@ public final class BSIP { * @return All the subnet records that match it */ public static List allMatching(InetAddress netAddress) { - IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); + IPAddress lookup = IPAddress.from(netAddress); return allMatching(lookup); } @@ -129,7 +127,7 @@ public final class BSIP { */ public static List allContained(IPAddress lookup, int cidr) { List returns = new ArrayList<>(); - IPAddress newBase = lookup.toPrefixBlock(cidr); + IPAddress newBase = lookup.toSubnet(cidr); StringBuilder sb = new StringBuilder("SELECT * FROM bs_ip WHERE "); if (newBase.isIPv4()) { sb.append("ip4 LIKE \"").append(newBase.toSQLWildcardString()).append("\""); @@ -220,7 +218,7 @@ public final class BSIP { */ private static void fillFromCIDRs(IPAddress lookup, int maxCIDR, List matches) { for (int curCIDR = maxCIDR; curCIDR > 0; curCIDR--) { - BSIP prospect = byCIDR(lookup.toPrefixBlock(curCIDR).getLower().toString(), curCIDR); + BSIP prospect = byCIDR(lookup.toSubnet(curCIDR).getLower().toString(), curCIDR); if (prospect != null) { matches.add(prospect); } @@ -261,7 +259,7 @@ public final class BSIP { BanStick.getPlugin().severe("Unknown Inet address type: " + netAddress.toString()); return null; } - getIP.setString(1, lookup.toPrefixBlock(cidr).getLower().toString()); + getIP.setString(1, lookup.toSubnet(cidr).getLower().toString()); getIP.setInt(2, cidr); BSIP bsip = null; @@ -283,7 +281,7 @@ public final class BSIP { * @return The matching IP or null */ public static BSIP byInetAddress(InetAddress netAddress) { - IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); + IPAddress lookup = IPAddress.from(netAddress); return byIPAddress(lookup); } @@ -411,7 +409,7 @@ public final class BSIP { * @return a BSIP object, or null if failure. */ public static BSIP create(InetAddress netAddress) { - IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress); + IPAddress lookup = IPAddress.from(netAddress); return create(lookup); } @@ -478,7 +476,7 @@ public final class BSIP { * @return a new BSIP or null if failed */ public static BSIP create(InetAddress netAddress, int cidr) { - IPAddress lookup = IPAddressConverter.INSTANCE.from(netAddress).toPrefixBlock(cidr).getLower(); + IPAddress lookup = IPAddress.from(netAddress).toSubnet(cidr).getLower(); return create(lookup, cidr); } diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java index 9b1165291..540b154c6 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickTorUpdater.java @@ -4,8 +4,8 @@ import com.programmerdan.minecraft.banstick.BanStick; import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -173,7 +173,7 @@ tor: } } - } catch (NullPointerException | AddressStringException e) { + } catch (NullPointerException | IPAddressStringException e) { // quiet. errors ++; } diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java deleted file mode 100644 index 539834935..000000000 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IPAddressConverter.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.programmerdan.minecraft.banstick.importer; - -import inet.ipaddr.IPAddressNetwork; - -public final class IPAddressConverter { - public static final IPAddressNetwork.IPAddressGenerator INSTANCE = new IPAddressNetwork.IPAddressGenerator(); -} diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java index 5a4d57471..3b6bed17f 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/proxy/Cloud9ProxyLoader.java @@ -6,7 +6,6 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.handler.ProxyLoader; -import com.programmerdan.minecraft.banstick.importer.IPAddressConverter; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; import java.io.BufferedReader; @@ -90,14 +89,14 @@ public final class Cloud9ProxyLoader extends ProxyLoader { if (arr[0] == 0) { arr = Arrays.copyOfRange(arr, 1, arr.length); } - lowboundAddr = IPAddressConverter.INSTANCE.from(arr); + lowboundAddr = IPAddress.from(arr); } catch (IllegalArgumentException iae) { BanStick.getPlugin().debug("Failed on byte array {0}", start.toByteArray()); } int mask = lowboundAddr.isIPv4() ? 32 : 128; while (mask > 0) { - IPAddress maskAddr = lowboundAddr.toPrefixBlock(mask - 1); + IPAddress maskAddr = lowboundAddr.toSubnet(mask - 1); if (maskAddr.getLower().compareTo(lowboundAddr) != 0) { break; } @@ -110,8 +109,8 @@ public final class Cloud9ProxyLoader extends ProxyLoader { } BanStick.getPlugin().debug(" Found sub-CIDR: {0}", - lowboundAddr.toPrefixBlock(mask).toCanonicalString()); - cidrFromRange.add(lowboundAddr.toPrefixBlock(mask)); + lowboundAddr.toSubnet(mask).toCanonicalString()); + cidrFromRange.add(lowboundAddr.toSubnet(mask)); BigInteger migrate = BigInteger.valueOf(2).pow((lowboundAddr.isIPv4() ? 32 : 128) - mask); start = start.add(migrate); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java index e73f5fe9a..6f821b2c2 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/scraper/ScrapeFreeProxyList.java @@ -5,9 +5,9 @@ import com.programmerdan.minecraft.banstick.data.BSBan; import com.programmerdan.minecraft.banstick.data.BSIP; import com.programmerdan.minecraft.banstick.data.BSIPData; import com.programmerdan.minecraft.banstick.handler.ScraperWorker; -import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressString; +import inet.ipaddr.IPAddressStringException; import java.io.IOException; import java.util.Date; import java.util.List; @@ -136,7 +136,7 @@ public class ScrapeFreeProxyList extends ScraperWorker { : new Date(System.currentTimeMillis() + this.banLength), false); } } - } catch (AddressStringException iase) { + } catch (IPAddressStringException iase) { continue; } } From 5f578a9e996797407a4f80216e75ab506eccc7b1 Mon Sep 17 00:00:00 2001 From: Cola Date: Mon, 5 Jul 2021 20:33:22 +0100 Subject: [PATCH 6/6] Latest CMC --- .../minecraft/banstick/handler/BanStickDatabaseHandler.java | 5 +++-- .../minecraft/banstick/importer/IpCheckImportWorker.java | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickDatabaseHandler.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickDatabaseHandler.java index 2f0671ce8..bd777689a 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickDatabaseHandler.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/handler/BanStickDatabaseHandler.java @@ -16,6 +16,7 @@ import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.Player; import org.bukkit.scheduler.BukkitRunnable; +import vg.civcraft.mc.civmodcore.dao.DatabaseCredentials; import vg.civcraft.mc.civmodcore.dao.ManagedDatasource; /** @@ -67,8 +68,8 @@ public class BanStickDatabaseHandler { long idleTimeout = config.getLong("idle_timeout", 600000L); long maxLifetime = config.getLong("max_lifetime", 7200000L); try { - data = new ManagedDatasource(BanStick.getPlugin(), username, password, host, port, dbname, - poolsize, connectionTimeout, idleTimeout, maxLifetime); + data = ManagedDatasource.construct(BanStick.getPlugin(), new DatabaseCredentials(username, password, host, port, "mysql", dbname, + poolsize, connectionTimeout, idleTimeout, maxLifetime)); data.getConnection().close(); } catch (Exception se) { BanStick.getPlugin().info("Failed to initialize Database connection"); diff --git a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IpCheckImportWorker.java b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IpCheckImportWorker.java index 68c26e1ed..49ee90506 100644 --- a/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IpCheckImportWorker.java +++ b/plugins/banstick-paper/src/main/java/com/programmerdan/minecraft/banstick/importer/IpCheckImportWorker.java @@ -17,6 +17,7 @@ import java.util.UUID; import org.bukkit.Bukkit; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.entity.Player; +import vg.civcraft.mc.civmodcore.dao.DatabaseCredentials; import vg.civcraft.mc.civmodcore.dao.ManagedDatasource; import vg.civcraft.mc.namelayer.NameAPI; @@ -58,8 +59,8 @@ public class IpCheckImportWorker extends ImportWorker { long idleTimeout = config.getLong("idle_timeout", 600000L); long maxLifetime = config.getLong("max_lifetime", 7200000L); try { - internalDatabase = new ManagedDatasource(BanStick.getPlugin(), username, password, host, port, dbname, - poolsize, connectionTimeout, idleTimeout, maxLifetime); + internalDatabase = ManagedDatasource.construct(BanStick.getPlugin(), new DatabaseCredentials(username, password, host, port, "mysql", dbname, + poolsize, connectionTimeout, idleTimeout, maxLifetime)); internalDatabase.getConnection().close(); } catch (Exception se) { BanStick.getPlugin().info("Failed to initialize Database connection");