gameserver: skip encryption on Hello (try plaintext challenge)
Build Game Server / build (push) Successful in 19s

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-14 20:54:01 +02:00
co-authored by Claude Opus 4.8
parent fb73038901
commit ba9976c5b6
+10 -1
View File
@@ -286,7 +286,16 @@ public abstract partial class UWorld : FNetworkNotify, IAsyncDisposable
}
else
{
throw new NotImplementedException("Encryption");
// The Cycle client offers an EncryptionToken in NMT_Hello. A UE
// connection only switches to AES once the server replies with
// NMT_EncryptionAck — the token is an offer, not a requirement.
// Implementing the full AES-GCM packet handler is a large effort,
// so first proceed WITHOUT encryption: never send the ack and go
// straight to the challenge. If the client keeps talking plaintext
// we're done; if it insists on encryption it will drop here and we
// know AES is mandatory.
Logger.Warning("Client sent EncryptionToken ({Len} chars) — proceeding WITHOUT encryption (no EncryptionAck)", encryptionToken.Length);
connection.SendChallengeControlMessage();
}
}
break;