diff options
author | Peter Powell <petpow@saberuk.com> | 2017-12-22 01:08:22 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-22 01:08:22 +0000 |
commit | 35a37bf46f2d2af8b346671de5d80d1073e5edb6 (patch) | |
tree | 76b3c400dd44945f212a98a0da73bae7d1809f73 /src/modules/m_shun.cpp | |
parent | a98ae6f6716597572a2797b00f4e3a4a5d7e52d7 (diff) | |
parent | 197c3445b04f16dd563426fb606c848f20f77c96 (diff) |
Merge pull request #1443 from B00mX0r/master+filtershun
Add SHUN as a /filter action
Diffstat (limited to 'src/modules/m_shun.cpp')
-rw-r--r-- | src/modules/m_shun.cpp | 40 |
1 files changed, 1 insertions, 39 deletions
diff --git a/src/modules/m_shun.cpp b/src/modules/m_shun.cpp index d68f58dd4..5b0b42cae 100644 --- a/src/modules/m_shun.cpp +++ b/src/modules/m_shun.cpp @@ -22,46 +22,8 @@ #include "inspircd.h" #include "xline.h" +#include "modules/shun.h" -class Shun : public XLine -{ -public: - std::string matchtext; - - Shun(time_t s_time, long d, const std::string& src, const std::string& re, const std::string& shunmask) - : XLine(s_time, d, src, re, "SHUN") - , matchtext(shunmask) - { - } - - bool Matches(User* u) CXX11_OVERRIDE - { - // E: overrides shun - LocalUser* lu = IS_LOCAL(u); - if (lu && lu->exempt) - return false; - - if (InspIRCd::Match(u->GetFullHost(), matchtext) || InspIRCd::Match(u->GetFullRealHost(), matchtext) || InspIRCd::Match(u->nick+"!"+u->ident+"@"+u->GetIPString(), matchtext)) - return true; - - if (InspIRCd::MatchCIDR(u->GetIPString(), matchtext, ascii_case_insensitive_map)) - return true; - - return false; - } - - bool Matches(const std::string& s) CXX11_OVERRIDE - { - if (matchtext == s) - return true; - return false; - } - - const std::string& Displayable() CXX11_OVERRIDE - { - return matchtext; - } -}; /** An XLineFactory specialized to generate shun pointers */ |