The InspIRCd Project
Home | Developers | Wiki | Forums | Bug Tracker | SVN | Download
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

ModuleFilter Class Reference

Inheritance diagram for ModuleFilter:

Inheritance graph
[legend]
Collaboration diagram for ModuleFilter:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ModuleFilter (InspIRCd *Me)
virtual ~ModuleFilter ()
virtual FilterResultFilterMatch (User *user, const std::string &text, int flgs)
virtual bool DeleteFilter (const std::string &freeform)
virtual void SyncFilters (Module *proto, void *opaque)
virtual std::pair< bool, std::stringAddFilter (const std::string &freeform, const std::string &type, const std::string &reason, long duration, const std::string &flgs)
virtual void OnRehash (User *user, const std::string &parameter)
 Called on rehash.
void ReadFilters (ConfigReader &MyConf)
virtual int OnStats (char symbol, User *user, string_list &results)
 Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core.

Private Attributes

std::vector< ImplFilterfilters
const char * error
int erroffset
ImplFilter fr

Detailed Description

Definition at line 540 of file m_filter.cpp.


Constructor & Destructor Documentation

ModuleFilter::ModuleFilter InspIRCd Me  )  [inline]
 

Definition at line 548 of file m_filter.cpp.

References OnRehash().

virtual ModuleFilter::~ModuleFilter  )  [inline, virtual]
 

Definition at line 554 of file m_filter.cpp.


Member Function Documentation

virtual std::pair<bool, std::string> ModuleFilter::AddFilter const std::string freeform,
const std::string type,
const std::string reason,
long  duration,
const std::string flgs
[inline, virtual]
 

Implements FilterBase.

Definition at line 606 of file m_filter.cpp.

References DEFAULT, filters, CoreException::GetReason(), LogManager::Log(), InspIRCd::Logs, and Module::ServerInstance.

virtual bool ModuleFilter::DeleteFilter const std::string freeform  )  [inline, virtual]
 

Implements FilterBase.

Definition at line 584 of file m_filter.cpp.

References filters.

Referenced by ReadFilters().

virtual FilterResult* ModuleFilter::FilterMatch User user,
const std::string text,
int  flgs
[inline, virtual]
 

Implements FilterBase.

Definition at line 558 of file m_filter.cpp.

References FilterBase::AppliesToMe(), filters, and fr.

virtual void ModuleFilter::OnRehash User user,
const std::string parameter
[inline, virtual]
 

Called on rehash.

This method is called prior to a /REHASH or when a SIGHUP is received from the operating system. You should use it to reload any files so that your module keeps in step with the rest of the application. If a parameter is given, the core has done nothing. The module receiving the event can decide if this parameter has any relevence to it.

Parameters:
user The user performing the rehash, if any -- if this is server initiated, the value of this variable will be NULL.
parameter The (optional) parameter given to REHASH from the user.

Reimplemented from FilterBase.

Definition at line 628 of file m_filter.cpp.

References FilterBase::OnRehash(), ReadFilters(), and Module::ServerInstance.

Referenced by ModuleFilter().

virtual int ModuleFilter::OnStats char  symbol,
User user,
string_list results
[inline, virtual]
 

Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core.

Parameters:
symbol the symbol provided to /STATS
user the user issuing the /STATS command
results A string_list to append results into. You should put all your results into this string_list, rather than displaying them directly, so that your handler will work when remote STATS queries are received.
Returns:
1 to block the /STATS from being processed by the core, 0 to allow it

Implements FilterBase.

Definition at line 663 of file m_filter.cpp.

References InspIRCd::Config, ConvToStr(), FilterBase::exemptfromfilter, filters, User::nick, RegexEngine, Module::ServerInstance, and ServerConfig::ServerName.

void ModuleFilter::ReadFilters ConfigReader MyConf  )  [inline, virtual]
 

Implements FilterBase.

Definition at line 635 of file m_filter.cpp.

References DEFAULT, DeleteFilter(), InspIRCd::Duration(), ConfigReader::Enumerate(), filters, CoreException::GetReason(), LogManager::Log(), InspIRCd::Logs, ConfigReader::ReadValue(), and Module::ServerInstance.

Referenced by OnRehash().

virtual void ModuleFilter::SyncFilters Module proto,
void *  opaque
[inline, virtual]
 

Implements FilterBase.

Definition at line 598 of file m_filter.cpp.

References filters, and FilterBase::SendFilter().


Member Data Documentation

int ModuleFilter::erroffset [private]
 

Definition at line 544 of file m_filter.cpp.

const char* ModuleFilter::error [private]
 

Definition at line 543 of file m_filter.cpp.

std::vector<ImplFilter> ModuleFilter::filters [private]
 

Definition at line 542 of file m_filter.cpp.

Referenced by AddFilter(), DeleteFilter(), FilterMatch(), OnStats(), ReadFilters(), and SyncFilters().

ImplFilter ModuleFilter::fr [private]
 

Definition at line 545 of file m_filter.cpp.

Referenced by FilterMatch().


The documentation for this class was generated from the following file: