From 49fd37089b8ca7b1d280f18d423fce902daf2205 Mon Sep 17 00:00:00 2001
From: Image <>
Date: Mon, 6 Jul 2020 21:29:35 -0400
Subject: [PATCH] Update LoginDatabase.cpp

Additional logging to track password issues with world server connections
---
 EQ2/source/LoginServer/LoginDatabase.cpp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/EQ2/source/LoginServer/LoginDatabase.cpp b/EQ2/source/LoginServer/LoginDatabase.cpp
index d0078c01a..748821c8c 100644
--- a/EQ2/source/LoginServer/LoginDatabase.cpp
+++ b/EQ2/source/LoginServer/LoginDatabase.cpp
@@ -530,10 +530,18 @@ int32 LoginDatabase::CheckServerAccount(char* name, char* passwd){
 	MYSQL_ROW row;
 	query.escaped_name = getEscapeString(name);
 	MYSQL_RES* result = query.RunQuery2(Q_SELECT, "SELECT password, id from login_worldservers where account='%s'", query.escaped_name);
+
+	LogWrite(LOGIN__INFO, 0, "Login", "WorldServer CheckServerAccount Account=%s\nSHA=%s", (char*)query.escaped_name, passwd);
 	if(result && mysql_num_rows(result) == 1){
 		row = mysql_fetch_row(result);
-		if(memcmp(row[0], passwd, 1) == 0)
+
+		LogWrite(LOGIN__INFO, 0, "Login", "WorldServer CheckServerAccountResult Account=%s\nPassword=%s", (char*)query.escaped_name, (row && row[0]) ? row[0] : "(NULL)");
+
+		if (memcmp(row[0], passwd, strnlen(passwd, 256)) == 0)
+		{
+			LogWrite(LOGIN__INFO, 0, "Login", "WorldServer CheckServerAccountResultMatch Account=%s", (char*)query.escaped_name);
 			id = atoi(row[1]);
+		}
 	}
 	return id;
 }