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, "운영툴 사용내역 로그를 남기는데 실패했습니다. 쿼리-%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));
|
|
}
|
|
} |