From 7816e40bd7b8cee096402b9068d179a88a6ff2ff Mon Sep 17 00:00:00 2001 From: Big-Iron-Cheems <52252627+Big-Iron-Cheems@users.noreply.github.com> Date: Wed, 15 Jul 2026 12:07:18 +0200 Subject: [PATCH] feat: replace AddressCheck with allow-all implementation Tested via successful connection to `play.6b6t.org` --- .../meteorclient/mixin/AddressCheckMixin.java | 34 +++++++++++++++++++ src/main/resources/meteor-client.mixins.json | 1 + 2 files changed, 35 insertions(+) create mode 100644 src/main/java/meteordevelopment/meteorclient/mixin/AddressCheckMixin.java diff --git a/src/main/java/meteordevelopment/meteorclient/mixin/AddressCheckMixin.java b/src/main/java/meteordevelopment/meteorclient/mixin/AddressCheckMixin.java new file mode 100644 index 0000000000..06a4f232d3 --- /dev/null +++ b/src/main/java/meteordevelopment/meteorclient/mixin/AddressCheckMixin.java @@ -0,0 +1,34 @@ +/* + * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client). + * Copyright (c) Meteor Development. + */ + +package meteordevelopment.meteorclient.mixin; + +import net.minecraft.client.multiplayer.resolver.AddressCheck; +import net.minecraft.client.multiplayer.resolver.ResolvedServerAddress; +import net.minecraft.client.multiplayer.resolver.ServerAddress; +import org.jspecify.annotations.NullMarked; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@NullMarked +@Mixin(AddressCheck.class) +public interface AddressCheckMixin { + @Inject(method = "createFromService", at = @At("HEAD"), cancellable = true) + private static void onCreateFromService(CallbackInfoReturnable cir) { + cir.setReturnValue(new AddressCheck() { + @Override + public boolean isAllowed(ResolvedServerAddress address) { + return true; + } + + @Override + public boolean isAllowed(ServerAddress address) { + return true; + } + }); + } +} diff --git a/src/main/resources/meteor-client.mixins.json b/src/main/resources/meteor-client.mixins.json index 6a198b780f..968a4145d1 100644 --- a/src/main/resources/meteor-client.mixins.json +++ b/src/main/resources/meteor-client.mixins.json @@ -16,6 +16,7 @@ "AbstractMountInventoryMenuAccessor", "AbstractSignEditScreenAccessor", "AbstractSignRendererMixin", + "AddressCheckMixin", "ArmorStandRendererMixin", "AttackRangeMixin", "AvatarRendererMixin",