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; }