From 83f8ad05554fc9b10d3ff91b3403e2d56df35704 Mon Sep 17 00:00:00 2001 From: juanjp600 Date: Mon, 29 Aug 2016 18:40:27 -0300 Subject: [PATCH] Clientside fix for empty password Thanks for finding this Reg --- Subsurface/Source/Networking/GameClient.cs | 7 ++++++- Subsurface/Source/Networking/GameServerLogin.cs | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Subsurface/Source/Networking/GameClient.cs b/Subsurface/Source/Networking/GameClient.cs index c09e60810..22faf005a 100644 --- a/Subsurface/Source/Networking/GameClient.cs +++ b/Subsurface/Source/Networking/GameClient.cs @@ -173,7 +173,12 @@ namespace Barotrauma.Networking reconnectBox.Buttons[0].OnClicked += reconnectBox.Close; } - CoroutineManager.StartCoroutine(WaitForStartingInfo(Encoding.UTF8.GetString(NetUtility.ComputeSHAHash(Encoding.UTF8.GetBytes(password))))); + String sendPw = ""; + if (password.Length>0) + { + sendPw = Encoding.UTF8.GetString(NetUtility.ComputeSHAHash(Encoding.UTF8.GetBytes(password))); + } + CoroutineManager.StartCoroutine(WaitForStartingInfo(sendPw)); // Start the timer //update.Start(); diff --git a/Subsurface/Source/Networking/GameServerLogin.cs b/Subsurface/Source/Networking/GameServerLogin.cs index 1b1b4004d..4390d1a26 100644 --- a/Subsurface/Source/Networking/GameServerLogin.cs +++ b/Subsurface/Source/Networking/GameServerLogin.cs @@ -62,7 +62,7 @@ namespace Barotrauma.Networking { unauthenticatedClients.Remove(unauthenticatedClient); - string saltedPw = password; + string saltedPw = password; saltedPw = saltedPw + Convert.ToString(unauthenticatedClient.Nonce); saltedPw = Encoding.UTF8.GetString(NetUtility.ComputeSHAHash(Encoding.UTF8.GetBytes(saltedPw))); NetEncryption algo = new NetXtea(server, saltedPw);