Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
184 lines
5.7 KiB
C++
184 lines
5.7 KiB
C++
#include "stdafx.h"
|
||
|
||
#include "Ryl_DetailLog.h"
|
||
#include "DBComponent/Ryl_AdminMgrDB.h"
|
||
|
||
#include <Network/Packet/PacketBase.h>
|
||
#include <Log/ServerLog.h>
|
||
|
||
|
||
char CDetailLog::m_szAfter [1024];
|
||
char CDetailLog::m_szBefore[1024];
|
||
char CDetailLog::m_szQuery [5000];
|
||
|
||
|
||
CDetailLog::CDetailLog()
|
||
{
|
||
for(int nCMD = 0; nCMD < PktAdminMgr::PktCMD::PktEnd; ++nCMD)
|
||
{
|
||
PktLog[nCMD] = PktEmpty;
|
||
}
|
||
|
||
PktLog[PktAdminMgr::PktCMD::PktNewAdmin] = PktNewAdmin;
|
||
PktLog[PktAdminMgr::PktCMD::PktDelAdmin] = PktDelAdmin;
|
||
PktLog[PktAdminMgr::PktCMD::PktUpdateLevel] = PktUpdateLevel;
|
||
PktLog[PktAdminMgr::PktCMD::PktUpdateIP] = PktUpdateIP;
|
||
PktLog[PktAdminMgr::PktCMD::PktUpdatePasswd] = PktUpdatePasswd;
|
||
}
|
||
|
||
void CDetailLog::SetBefore(char* lpBefore, ...)
|
||
{
|
||
va_list Arguments;
|
||
|
||
va_start_ext(Arguments, lpBefore);
|
||
_vsntprintf(CDetailLog::m_szBefore, sizeof(m_szBefore), lpBefore, Arguments);
|
||
va_end(Arguments);
|
||
}
|
||
|
||
void CDetailLog::SetAfter(char* lpAfter, ...)
|
||
{
|
||
va_list Arguments;
|
||
|
||
va_start_ext(Arguments, lpAfter);
|
||
_vsntprintf(CDetailLog::m_szAfter, sizeof(m_szAfter), lpAfter, Arguments);
|
||
va_end(Arguments);
|
||
}
|
||
|
||
void CDetailLog::InsertLog(unsigned int LogID)
|
||
{
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
}
|
||
|
||
void CDetailLog::PktNewAdmin(LOG_METHOD)
|
||
{
|
||
PktAdminMgr::PktNewAdmin* lpPktNewAdmin =
|
||
static_cast<PktAdminMgr::PktNewAdmin*>(lpPktBase);
|
||
|
||
int len;
|
||
|
||
_snprintf(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore), "not exist contents");
|
||
|
||
_snprintf(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter),
|
||
"[Tool Admin Account Registration]\r\n"
|
||
"Account: %s\r\nPass: %s\r\nName: %s\r\nIP: %s\r\nLevel: %c",
|
||
lpPktNewAdmin->m_szAccount, lpPktNewAdmin->m_szPasswd, lpPktNewAdmin->m_szName,
|
||
lpPktNewAdmin->m_szIP, lpPktNewAdmin->m_szLev );
|
||
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
|
||
len = strlen(CDetailLog::m_szAfter);
|
||
}
|
||
|
||
void CDetailLog::PktDelAdmin(LOG_METHOD)
|
||
{
|
||
PktAdminMgr::PktDelAdmin* lpPktDelAdmin =
|
||
static_cast<PktAdminMgr::PktDelAdmin*>(lpPktBase);
|
||
|
||
_snprintf(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore), "not exist contents" );
|
||
|
||
_snprintf(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter),
|
||
"[Tool Admin Account Delete]\r\nDeleted Account: %s", lpPktDelAdmin->m_szAccount);
|
||
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
}
|
||
|
||
void CDetailLog::PktUpdateLevel(LOG_METHOD)
|
||
{
|
||
PktAdminMgr::PktUpdateLevel* lpPktUpdateLevel =
|
||
static_cast<PktAdminMgr::PktUpdateLevel*>(lpPktBase);
|
||
|
||
char szLevel[2];
|
||
char szAfterQuery[4096];
|
||
|
||
_snprintf(szAfterQuery, sizeof(szAfterQuery),
|
||
QUERYZ::GetLevel, lpPktUpdateLevel->m_szAccount);
|
||
|
||
if(CDBAdminTool::GetInstance().ExecuteQuery(szAfterQuery))
|
||
{
|
||
if(CDBAdminTool::GetInstance().GetData(&szLevel))
|
||
{
|
||
_snprintf(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore),
|
||
"[Tool Admin Level Edit]\r\nAccount: %s\r\nOld Level: %c",
|
||
lpPktUpdateLevel->m_szAccount, szLevel[0]);
|
||
|
||
_snprintf(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter),
|
||
"New Level: %c", lpPktUpdateLevel->m_szLevel);
|
||
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
}
|
||
}
|
||
}
|
||
|
||
void CDetailLog::PktUpdateIP(LOG_METHOD)
|
||
{
|
||
PktAdminMgr::PktUpdateIP* lpPktUpdateIP =
|
||
static_cast<PktAdminMgr::PktUpdateIP*>(lpPktBase);
|
||
|
||
char szIP[PktAdminMgr::MAX_IP];
|
||
char szBeforeQuery[4096];
|
||
|
||
_snprintf(szBeforeQuery, sizeof(szBeforeQuery),
|
||
QUERYZ::GetIP, lpPktUpdateIP->m_szAccount);
|
||
|
||
if(CDBAdminTool::GetInstance().ExecuteQuery(szBeforeQuery))
|
||
{
|
||
if(CDBAdminTool::GetInstance().GetData(&szIP))
|
||
{
|
||
_snprintf(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore),
|
||
"[Tool Admin IP Edit]\r\nAccount: %s\r\nOld IP: %s",
|
||
lpPktUpdateIP->m_szAccount, szIP );
|
||
|
||
_snprintf(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter),
|
||
"New IP: %s", lpPktUpdateIP->m_szIP);
|
||
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
}
|
||
}
|
||
}
|
||
|
||
void CDetailLog::PktUpdatePasswd(LOG_METHOD)
|
||
{
|
||
PktAdminMgr::PktUpdatePasswd* lpPktUpdatePasswd = static_cast<PktAdminMgr::PktUpdatePasswd*>(lpPktBase);
|
||
|
||
char szPassword[PktAdminMgr::MAX_PASSWORD];
|
||
char szBeforeQuery[4096];
|
||
|
||
_snprintf(szBeforeQuery, sizeof(szBeforeQuery), QUERYZ::GetPassword, lpPktUpdatePasswd->m_szAccount);
|
||
|
||
if(CDBAdminTool::GetInstance().ExecuteQuery(szBeforeQuery))
|
||
{
|
||
if(CDBAdminTool::GetInstance().GetData(&szPassword))
|
||
{
|
||
_snprintf(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore),
|
||
"[Tool Admin Pass Edit]\r\nAccount: %s\r\nOld Pass: %s",
|
||
lpPktUpdatePasswd->m_szAccount, szPassword);
|
||
|
||
_snprintf(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter),
|
||
"New Pass: %s", lpPktUpdatePasswd->m_szPasswd);
|
||
|
||
_snprintf(CDetailLog::m_szQuery, CDBAdminTool::MAX_QUERY_LENGTH,
|
||
QUERYZ::InsertDetailLog, LogID, TYPE_ADMIN, CDetailLog::m_szBefore, CDetailLog::m_szAfter);
|
||
}
|
||
}
|
||
}
|
||
|
||
void CDetailLog::UpdateDetailLog()
|
||
{
|
||
if(0 != strlen(CDetailLog::m_szQuery))
|
||
{
|
||
if(!CDBAdminTool::GetInstance().ExecuteQuery(CDetailLog::m_szQuery))
|
||
{
|
||
ERRLOG2(g_Log, "<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>볻<EFBFBD><EBB3BB> <20>α<CEB1> <20><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD>ϴ<EFBFBD>. <20><><EFBFBD><EFBFBD>-%s, Err-%s",
|
||
CDetailLog::m_szQuery, CDBAdminTool::GetInstance().GetErrorString());
|
||
}
|
||
|
||
ZeroMemory(CDetailLog::m_szQuery, sizeof(CDetailLog::m_szQuery));
|
||
ZeroMemory(CDetailLog::m_szBefore, sizeof(CDetailLog::m_szBefore));
|
||
ZeroMemory(CDetailLog::m_szAfter, sizeof(CDetailLog::m_szAfter));
|
||
}
|
||
} |