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

xline.h File Reference

#include <string>
#include <deque>
#include <vector>
#include "users.h"
#include "channels.h"

Include dependency graph for xline.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  XLine
 XLine is the base class for ban lines such as G lines and K lines. More...
class  KLine
 KLine class. More...
class  GLine
 GLine class. More...
class  ELine
 ELine class. More...
class  ZLine
 ZLine class. More...
class  QLine
 QLine class. More...
class  XLineManager
 XLineManager is a class used to manage glines, klines, elines, zlines and qlines. More...

Typedefs

typedef std::pair< std::string,
std::string
IdentHostPair
 Contains an ident and host split into two strings.

Functions

bool InitXLine (ServerConfig *conf, const char *tag)
 Initialize x line.
bool DoneZLine (ServerConfig *conf, const char *tag)
 Done adding zlines from the config.
bool DoneQLine (ServerConfig *conf, const char *tag)
 Done adding qlines from the config.
bool DoneKLine (ServerConfig *conf, const char *tag)
 Done adding klines from the config.
bool DoneELine (ServerConfig *conf, const char *tag)
 Done adding elines from the config.
bool DoZLine (ServerConfig *conf, const char *tag, char **entries, ValueList &values, int *types)
 Add a config-defined zline.
bool DoQLine (ServerConfig *conf, const char *tag, char **entries, ValueList &values, int *types)
 Add a config-defined qline.
bool DoKLine (ServerConfig *conf, const char *tag, char **entries, ValueList &values, int *types)
 Add a config-defined kline.
bool DoELine (ServerConfig *conf, const char *tag, char **entries, ValueList &values, int *types)
 Add a config-defined eline.

Variables

const int APPLY_GLINES = 1
const int APPLY_KLINES = 2
const int APPLY_QLINES = 4
const int APPLY_ZLINES = 8
const int APPLY_PERM_ONLY = 16
const int APPLY_ALL = APPLY_GLINES | APPLY_KLINES | APPLY_QLINES | APPLY_ZLINES


Typedef Documentation

typedef std::pair<std::string, std::string> IdentHostPair
 

Contains an ident and host split into two strings.

Definition at line 278 of file xline.h.


Function Documentation

bool DoELine ServerConfig conf,
const char *  tag,
char **  entries,
ValueList values,
int *  types
 

Add a config-defined eline.

Definition at line 94 of file xline.cpp.

References XLineManager::add_eline(), ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00095 {
00096         const char* reason = values[0].GetString();
00097         const char* host = values[1].GetString();
00098 
00099         conf->GetInstance()->XLines->add_eline(0,"<Config>",reason,host);
00100         return true;
00101 }

bool DoKLine ServerConfig conf,
const char *  tag,
char **  entries,
ValueList values,
int *  types
 

Add a config-defined kline.

Definition at line 85 of file xline.cpp.

References XLineManager::add_kline(), ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00086 {
00087         const char* reason = values[0].GetString();
00088         const char* host = values[1].GetString();
00089 
00090         conf->GetInstance()->XLines->add_kline(0,"<Config>",reason,host);
00091         return true;
00092 }

bool DoneELine ServerConfig conf,
const char *  tag
 

Done adding elines from the config.

Definition at line 61 of file xline.cpp.

Referenced by ServerConfig::Read().

00062 {
00063         /* Yes, this is supposed to do nothing, we dont 'apply' these */
00064         return true;
00065 }

bool DoneKLine ServerConfig conf,
const char *  tag
 

Done adding klines from the config.

Definition at line 55 of file xline.cpp.

References APPLY_KLINES, XLineManager::apply_lines(), APPLY_PERM_ONLY, ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00056 {
00057         conf->GetInstance()->XLines->apply_lines(APPLY_KLINES|APPLY_PERM_ONLY);
00058         return true;
00059 }

bool DoneQLine ServerConfig conf,
const char *  tag
 

Done adding qlines from the config.

Definition at line 49 of file xline.cpp.

References XLineManager::apply_lines(), APPLY_PERM_ONLY, APPLY_QLINES, ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00050 {
00051         conf->GetInstance()->XLines->apply_lines(APPLY_QLINES|APPLY_PERM_ONLY);
00052         return true;
00053 }

bool DoneZLine ServerConfig conf,
const char *  tag
 

Done adding zlines from the config.

Definition at line 43 of file xline.cpp.

References XLineManager::apply_lines(), APPLY_PERM_ONLY, APPLY_ZLINES, ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00044 {
00045         conf->GetInstance()->XLines->apply_lines(APPLY_ZLINES|APPLY_PERM_ONLY);
00046         return true;
00047 }

bool DoQLine ServerConfig conf,
const char *  tag,
char **  entries,
ValueList values,
int *  types
 

Add a config-defined qline.

Definition at line 76 of file xline.cpp.

References XLineManager::add_qline(), ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00077 {
00078         const char* reason = values[0].GetString();
00079         const char* nick = values[1].GetString();
00080 
00081         conf->GetInstance()->XLines->add_qline(0,"<Config>",reason,nick);
00082         return true;
00083 }

bool DoZLine ServerConfig conf,
const char *  tag,
char **  entries,
ValueList values,
int *  types
 

Add a config-defined zline.

Definition at line 67 of file xline.cpp.

References XLineManager::add_zline(), ServerConfig::GetInstance(), and InspIRCd::XLines.

Referenced by ServerConfig::Read().

00068 {
00069         const char* reason = values[0].GetString();
00070         const char* ipmask = values[1].GetString();
00071 
00072         conf->GetInstance()->XLines->add_zline(0,"<Config>",reason,ipmask);
00073         return true;
00074 }

bool InitXLine ServerConfig conf,
const char *  tag
 

Initialize x line.

Definition at line 38 of file xline.cpp.

Referenced by ServerConfig::Read().

00039 {
00040         return true;
00041 }


Variable Documentation

const int APPLY_ALL = APPLY_GLINES | APPLY_KLINES | APPLY_QLINES | APPLY_ZLINES
 

Definition at line 30 of file xline.h.

const int APPLY_GLINES = 1
 

Definition at line 25 of file xline.h.

Referenced by InspIRCd::AddGLine(), TreeSocket::AddLine(), XLineManager::apply_lines(), cmd_gline::Handle(), DNSBLResolver::OnLookupComplete(), FilterBase::OnPreCommand(), and FilterBase::OnUserPreNotice().

const int APPLY_KLINES = 2
 

Definition at line 26 of file xline.h.

Referenced by InspIRCd::AddKLine(), TreeSocket::AddLine(), XLineManager::apply_lines(), DoneKLine(), cmd_kline::Handle(), and DNSBLResolver::OnLookupComplete().

const int APPLY_PERM_ONLY = 16
 

Definition at line 29 of file xline.h.

Referenced by XLineManager::apply_lines(), DoneKLine(), DoneQLine(), DoneZLine(), cmd_zline::Handle(), cmd_qline::Handle(), cmd_kline::Handle(), and cmd_gline::Handle().

const int APPLY_QLINES = 4
 

Definition at line 27 of file xline.h.

Referenced by TreeSocket::AddLine(), InspIRCd::AddQLine(), XLineManager::apply_lines(), DoneQLine(), and cmd_qline::Handle().

const int APPLY_ZLINES = 8
 

Definition at line 28 of file xline.h.

Referenced by TreeSocket::AddLine(), InspIRCd::AddZLine(), XLineManager::apply_lines(), DoneZLine(), InspIRCd::FloodQuitUser(), cmd_zline::Handle(), DNSBLResolver::OnLookupComplete(), and ModuleAntiBear::OnPreCommand().