From 6692d15462003157768a15c86192399b5b73e3c2 Mon Sep 17 00:00:00 2001 From: brain Date: Fri, 10 Nov 2006 17:04:06 +0000 Subject: Add gline type, and value to say how long to ban for. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5666 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_filter.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'src/modules/m_filter.h') diff --git a/src/modules/m_filter.h b/src/modules/m_filter.h index 34e3d2513..b2c3816a8 100644 --- a/src/modules/m_filter.h +++ b/src/modules/m_filter.h @@ -14,13 +14,16 @@ * --------------------------------------------------- */ +#include "xline.h" + class FilterResult : public classbase { public: std::string reason; std::string action; + long gline_time; - FilterResult(const std::string &rea, const std::string &act) : reason(rea), action(act) + FilterResult(const std::string &rea, const std::string &act, long gt) : reason(rea), action(act), gline_time(gt) { } @@ -85,6 +88,15 @@ class FilterBase : public Module { userrec::QuitUser(ServerInstance,user,f->reason); } + + if (f->action == "gline") + { + if (ServerInstance->XLines->add_gline(f->gline_time, ServerInstance->Config->ServerName, f->reason.c_str(), user->MakeHostIP())) + { + ServerInstance->XLines->apply_lines(APPLY_GLINES); + FOREACH_MOD(I_OnAddGLine,OnAddGLine(f->gline_time, NULL, f->reason, user->MakeHostIP())); + } + } return 1; } return 0; -- cgit v1.2.3