From baf053bc8efee3577f26cf58fec261e28e18dff4 Mon Sep 17 00:00:00 2001 From: SupremeMortal <6178101+SupremeMortal@users.noreply.github.com> Date: Wed, 24 Jul 2024 17:13:12 +0100 Subject: [PATCH] Reuse the same cookie until it expires This fixes and issue where the client retries and fails because the cookie has been changed. --- .../handler/codec/raknet/server/RakServerOfflineHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/transport-raknet/src/main/java/org/cloudburstmc/netty/handler/codec/raknet/server/RakServerOfflineHandler.java b/transport-raknet/src/main/java/org/cloudburstmc/netty/handler/codec/raknet/server/RakServerOfflineHandler.java index 278b771..dd11561 100644 --- a/transport-raknet/src/main/java/org/cloudburstmc/netty/handler/codec/raknet/server/RakServerOfflineHandler.java +++ b/transport-raknet/src/main/java/org/cloudburstmc/netty/handler/codec/raknet/server/RakServerOfflineHandler.java @@ -183,7 +183,7 @@ private void onOpenConnectionRequest1(ChannelHandlerContext ctx, DatagramPacket cookie = 0; } - PendingConnection connection = this.pendingConnections.put(sender, new PendingConnection(protocolVersion, cookie)); + PendingConnection connection = this.pendingConnections.putIfAbsent(sender, new PendingConnection(protocolVersion, cookie)); if (connection != null && log.isTraceEnabled()) { log.trace("Received duplicate open connection request 1 from {}", sender); }