From 3764e4ba8903fcb2b50b67fa1579a2ca3d66853b Mon Sep 17 00:00:00 2001 From: ismail <74091824+ismaileke@users.noreply.github.com> Date: Sat, 3 Aug 2024 10:49:44 +0000 Subject: [PATCH] for now --- src/server/UnconnectedMessageHandler.php | 13 +++++++------ src/utils/Cookie.php | 2 ++ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/server/UnconnectedMessageHandler.php b/src/server/UnconnectedMessageHandler.php index 6838c71..a8bb86b 100644 --- a/src/server/UnconnectedMessageHandler.php +++ b/src/server/UnconnectedMessageHandler.php @@ -82,8 +82,7 @@ private function handle(OfflineMessage $packet, InternetAddress $address) : bool $this->server->sendPacket(IncompatibleProtocolVersion::create($this->protocolAcceptor->getPrimaryVersion(), $this->server->getID()), $address); $this->server->getLogger()->notice("Refused connection from $address due to incompatible RakNet protocol version (version $packet->protocol)"); }else{ - $serverHasSecurity = false; // then relocate it and make it available - if ($serverHasSecurity) { + if (!Cookie::$disableCookies) { Cookie::add($address); } //IP header size (20 bytes) + UDP header size (8 bytes) @@ -102,10 +101,12 @@ private function handle(OfflineMessage $packet, InternetAddress $address) : bool $this->server->getLogger()->debug("Not creating session for $address due to session already opened"); return true; } - if (!Cookie::check($address, $packet->cookie)) { - // Disconnect if OpenConnectionReply1 and the cookie in the OpenCnnectionRequest2 packet do not match - $this->server->getLogger()->debug("Not creating session for $address due to session mismatched cookies"); - return true; + if (!Cookie::$disableCookies) { + if (!Cookie::check($address, $packet->cookie)) { + // Disconnect if OpenConnectionReply1 and the cookie in the OpenCnnectionRequest2 packet do not match + $this->server->getLogger()->debug("Not creating session for $address due to session mismatched cookies"); + return true; + } } $mtuSize = min($packet->mtuSize, $this->server->getMaxMtuSize()); //Max size, do not allow creating large buffers to fill server memory $this->server->sendPacket(OpenConnectionReply2::create($this->server->getID(), $address, $mtuSize, false), $address); diff --git a/src/utils/Cookie.php b/src/utils/Cookie.php index abe2788..7a4ad09 100644 --- a/src/utils/Cookie.php +++ b/src/utils/Cookie.php @@ -24,6 +24,8 @@ final class Cookie{ + public static bool $disableCookies = true; + /** * @var array $cookies */