#include <ServerBanned.h>
Public Types | |
| enum | BannedType { NotBanned, Banned, Muted, Flagged } |
Public Member Functions | |
| ServerBanned () | |
| virtual | ~ServerBanned () |
| std::list < BannedRange > & | getBannedIps () |
| BannedType | getBanned (const char *unqiueid, const char *SUI) |
| BannedType | getBanned (unsigned int ip) |
| void | addBanned (unsigned int ip, const LangString &name, const char *uniqueId, const char *SUI, BannedType type, const char *adminname, const char *reason) |
| bool | save () |
| bool | load (bool force=false) |
Static Public Member Functions | |
| static const char * | getBannedTypeStr (BannedType type) |
Protected Member Functions | |
| void | addBannedEntry (unsigned int ip, unsigned int mask, const LangString &name, const char *unqiueId, const char *SUid, unsigned int bantime, BannedType type, const char *adminname, const char *reason) |
Protected Attributes | |
| std::list< BannedRange > | bannedIps_ |
| std::map < std::string, BannedEntry > | bannedIds_ |
| std::map < std::string, BannedEntry > | bannedSUIs_ |
| time_t | lastReadTime_ |
Classes | |
| struct | BannedEntry |
| struct | BannedRange |
Definition at line 30 of file ServerBanned.h.
| ServerBanned::ServerBanned | ( | ) |
Definition at line 30 of file ServerBanned.cpp.
| ServerBanned::~ServerBanned | ( | ) | [virtual] |
Definition at line 34 of file ServerBanned.cpp.
| std::list< ServerBanned::BannedRange > & ServerBanned::getBannedIps | ( | ) |
Definition at line 141 of file ServerBanned.cpp.
References bannedIps_, and load().
Referenced by ServerAdminHandler::processMessage(), and ServerWebHandler::BannedHandler::processRequest().
| ServerBanned::BannedType ServerBanned::getBanned | ( | const char * | unqiueid, | |
| const char * | SUI | |||
| ) |
Definition at line 147 of file ServerBanned.cpp.
References bannedIds_, bannedSUIs_, load(), NotBanned, and ServerBanned::BannedEntry::type.
Referenced by ServerConnectAuthHandler::addNextTank(), ServerConnectHandler::checkStandardParams(), ServerMessageHandler::clientConnected(), and ServerConnectAuthHandler::processMessage().
| ServerBanned::BannedType ServerBanned::getBanned | ( | unsigned int | ip | ) |
Definition at line 172 of file ServerBanned.cpp.
References bannedIps_, ServerBanned::BannedRange::ips, load(), ServerBanned::BannedRange::mask, NotBanned, and ServerBanned::BannedEntry::type.
| void ServerBanned::addBanned | ( | unsigned int | ip, | |
| const LangString & | name, | |||
| const char * | uniqueId, | |||
| const char * | SUI, | |||
| BannedType | type, | |||
| const char * | adminname, | |||
| const char * | reason | |||
| ) |
| bool ServerBanned::save | ( | ) |
Definition at line 287 of file ServerBanned.cpp.
References XMLNode::addChild(), XMLNode::addParameter(), ServerBanned::BannedEntry::adminname, bannedIps_, ServerBanned::BannedEntry::bantime, S3D::formatStringBuffer(), getBannedTypeStr(), NetInterface::getIpName(), S3D::getSettingsFile(), ScorchedServer::instance(), ServerBanned::BannedRange::ips, ServerBanned::BannedRange::mask, ServerBanned::BannedEntry::name, NotBanned, ServerBanned::BannedEntry::reason, ServerBanned::BannedEntry::SUI, ServerBanned::BannedEntry::type, ServerBanned::BannedEntry::uniqueid, XMLNode::writeToFile(), and XMLNode::XMLParameterType.
Referenced by addBanned(), and ServerWebHandler::BannedHandler::processRequest().
| bool ServerBanned::load | ( | bool | force = false |
) |
Definition at line 38 of file ServerBanned.cpp.
References addBannedEntry(), Banned, bannedIds_, bannedIps_, bannedSUIs_, S3D::dialogMessage(), file, S3D::fileExists(), S3D::fileModTime(), Flagged, S3D::formatStringBuffer(), XMLNode::getChildren(), XMLNode::getContent(), XMLNode::getNamedParameter(), XMLFile::getParserError(), XMLFile::getRootNode(), S3D::getSettingsFile(), ScorchedServer::instance(), int(), lastReadTime_, Logger::log(), Muted, XMLFile::readFile(), and LangStringUtil::strcmp().
Referenced by getBanned(), getBannedIps(), and ServerWebHandler::BannedHandler::processRequest().
| const char * ServerBanned::getBannedTypeStr | ( | BannedType | type | ) | [static] |
Definition at line 266 of file ServerBanned.cpp.
References Banned, Flagged, Muted, and NotBanned.
Referenced by ServerAdminHandler::processMessage(), ServerWebHandler::BannedHandler::processRequest(), and save().
| void ServerBanned::addBannedEntry | ( | unsigned int | ip, | |
| unsigned int | mask, | |||
| const LangString & | name, | |||
| const char * | unqiueId, | |||
| const char * | SUid, | |||
| unsigned int | bantime, | |||
| BannedType | type, | |||
| const char * | adminname, | |||
| const char * | reason | |||
| ) | [protected] |
Definition at line 205 of file ServerBanned.cpp.
References ServerBanned::BannedEntry::adminname, bannedIds_, bannedIps_, bannedSUIs_, ServerBanned::BannedEntry::bantime, ServerBanned::BannedRange::ips, ServerBanned::BannedRange::mask, ServerBanned::BannedEntry::name, ServerBanned::BannedEntry::reason, ServerBanned::BannedEntry::SUI, ServerBanned::BannedEntry::type, and ServerBanned::BannedEntry::uniqueid.
Referenced by addBanned(), and load().
std::list<BannedRange> ServerBanned::bannedIps_ [protected] |
Definition at line 75 of file ServerBanned.h.
Referenced by addBannedEntry(), getBanned(), getBannedIps(), load(), and save().
std::map<std::string, BannedEntry> ServerBanned::bannedIds_ [protected] |
Definition at line 76 of file ServerBanned.h.
Referenced by addBannedEntry(), getBanned(), and load().
std::map<std::string, BannedEntry> ServerBanned::bannedSUIs_ [protected] |
Definition at line 77 of file ServerBanned.h.
Referenced by addBannedEntry(), getBanned(), and load().
time_t ServerBanned::lastReadTime_ [protected] |
1.5.3