ServerBanned Class Reference

#include <ServerBanned.h>

List of all members.

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< BannedRangebannedIps_
std::map
< std::string,
BannedEntry
bannedIds_
std::map
< std::string,
BannedEntry
bannedSUIs_
time_t lastReadTime_

Classes

struct  BannedEntry
struct  BannedRange


Detailed Description

Definition at line 30 of file ServerBanned.h.


Member Enumeration Documentation

enum ServerBanned::BannedType

Enumerator:
NotBanned 
Banned 
Muted 
Flagged 

Definition at line 36 of file ServerBanned.h.


Constructor & Destructor Documentation

ServerBanned::ServerBanned (  ) 

Definition at line 30 of file ServerBanned.cpp.

ServerBanned::~ServerBanned (  )  [virtual]

Definition at line 34 of file ServerBanned.cpp.


Member Function Documentation

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 
)

Definition at line 196 of file ServerBanned.cpp.

References addBannedEntry(), int(), and save().

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().


Member Data Documentation

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]

Definition at line 78 of file ServerBanned.h.

Referenced by load().


The documentation for this class was generated from the following files:
Generated on Mon Feb 16 15:15:06 2009 for Scorched3D by  doxygen 1.5.3