Vi rilascio un po' di codice che ho scritto nel 2017 per effettuare un BAN per Indirizzo IP.
Source Server
game/input_auth.cpp
Client
intrologin.py
Ecco a voi la tabella SQL da inserire all'intero del database account
Inforge da un problema quando provo ad inserire la query, ecco a voi il link di pastebin:
Source Server
game/input_auth.cpp
C++:
// Cerca:
if (false == FN_IS_VALID_LOGIN_STRING(login))
{
sys_log(0, "InputAuth::Login : IS_NOT_VALID_LOGIN_STRING(%s) desc %p",
login, get_pointer(d));
LoginFailure(d, "NOID");
return;
}
// Inserisci:
char query[1024];
snprintf(query, sizeof(query),"SELECT ip FROM account.ban_ip WHERE ip = '%s'", inet_ntoa(d->GetAddr().sin_addr));
std::auto_ptr<SQLMsg> execquery(DBManager::instance().DirectQuery(query));
if (execquery->Get()->uiNumRows >= 1)
{
LoginFailure(d, "BAN_IP");
return;
}
Client
intrologin.py
Codice:
#Cerca:
self.loginFailureMsgDict={
#Aggiungi:
"BAN_IP" : "You have an ip ban",
Ecco a voi la tabella SQL da inserire all'intero del database account
Inforge da un problema quando provo ad inserire la query, ecco a voi il link di pastebin: