X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fxline.h;h=d1fe0e8826fb29b33de789b44b00669b95754a0d;hb=9f33bf7fc83cffccae96eb622bf39e8f4838b809;hp=348507f37759dd4c030dc0e1bf7a3147fba8c6cd;hpb=e4acbc95b8b6cd5b28d38a2242c02e8ff4991e4a;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/xline.h b/include/xline.h index 348507f37..d1fe0e882 100644 --- a/include/xline.h +++ b/include/xline.h @@ -14,9 +14,9 @@ #ifndef __XLINE_H #define __XLINE_H -#include -#include -#include +//#include +//#include +//#include /** XLine is the base class for ban lines such as G lines and K lines. * Modules may derive from this, and their xlines will automatically be @@ -142,6 +142,8 @@ class CoreExport XLine : public classbase * type of line this is. */ const std::string type; + + virtual bool IsBurstable(); }; /** KLine class @@ -184,6 +186,8 @@ class CoreExport KLine : public XLine virtual const char* Displayable(); + virtual bool IsBurstable(); + /** Ident mask (ident part only) */ char* identmask; @@ -381,7 +385,7 @@ typedef std::pair IdentHostPair; * does not have to know the specifics of the internals of an XLine class * and/or how to call its constructor. */ -class CoreExport XLineFactory +class CoreExport XLineFactory : public classbase { protected: @@ -411,6 +415,8 @@ class CoreExport XLineFactory */ virtual XLine* Generate(time_t set_time, long duration, const char* source, const char* reason, const char* xline_specific_mask) = 0; + virtual bool AutoApplyToUserList(XLine* x) { return true; } + /** Destructor */ virtual ~XLineFactory() { } @@ -451,7 +457,7 @@ typedef XLineLookup::iterator LookupIter; * or any other line created by a module. It also manages XLineFactory classes which * can generate a specialized XLine for use by another module. */ -class CoreExport XLineManager +class CoreExport XLineManager : public classbase { protected: /** The owner/creator of this class