diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-10-28 20:29:53 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2007-10-28 20:29:53 +0000 |
commit | 1580ba87b9e75adfff6efd98714f10c4ef7ad71c (patch) | |
tree | 4f971e89a648423280b12dafc18c64db5cecee2c | |
parent | f5f716ea6feafaa79a2dfa40895d77d3e0f39f60 (diff) |
I think this is done. Add overloaded Matches() which takes std::string and implement it in zline and qline, the rest dont need it
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8409 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | include/xline.h | 6 | ||||
-rw-r--r-- | src/xline.cpp | 22 |
2 files changed, 27 insertions, 1 deletions
diff --git a/include/xline.h b/include/xline.h index 0fa6e3f53..9fd4d0bea 100644 --- a/include/xline.h +++ b/include/xline.h @@ -61,6 +61,8 @@ class CoreExport XLine : public classbase */ virtual bool Matches(User *u) = 0; + virtual bool Matches(const std::string &str); + /** The time the line was added. */ time_t set_time; @@ -217,6 +219,8 @@ class CoreExport ZLine : public XLine virtual bool Matches(User *u); + virtual bool Matches(const std::string &str); + /** IP mask */ char* ipaddr; @@ -248,6 +252,8 @@ class CoreExport QLine : public XLine } virtual bool Matches(User *u); + virtual bool Matches(const std::string &str); + /** Nickname mask */ char* nick; diff --git a/src/xline.cpp b/src/xline.cpp index a6ed0e605..71e94aab7 100644 --- a/src/xline.cpp +++ b/src/xline.cpp @@ -650,7 +650,10 @@ XLineManager::XLineManager(InspIRCd* Instance) : ServerInstance(Instance) { } - +virtual bool Matches(const std::string &str) +{ + return false; +} bool KLine::Matches(User *u) { @@ -706,3 +709,20 @@ bool QLine::Matches(User *u) return false; } + +bool ZLine::Matches(const std::string &str) +{ + if (match(str.c_str(), this->ipaddr, true)) + return true; + else + return false; +} + +bool QLine::Matches(const std::string &str) +{ + if (match(str.c_str(), this->nick)) + return true; + + return false; +} + |