summaryrefslogtreecommitdiff
path: root/modules/pseudoclients/operserv.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2013-09-08 06:02:35 -0400
committerAdam <Adam@anope.org>2013-09-08 06:02:35 -0400
commit55e4ef9d3a5dc7e3b616e1369aac01ea1c76780d (patch)
tree3a4f9e5593063ac0c0f36da2021c9248692771df /modules/pseudoclients/operserv.cpp
parentf63e4ceebe1df458b20e8ff9643ed4206982f8ae (diff)
Fix logging /os set list. Enforce snlines on ircds that can't have snlines set by just killing the user. Fix double call to OnMatch() when a user matches an xline
Diffstat (limited to 'modules/pseudoclients/operserv.cpp')
-rw-r--r--modules/pseudoclients/operserv.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/modules/pseudoclients/operserv.cpp b/modules/pseudoclients/operserv.cpp
index 1b21fc4eb..e10a8f39b 100644
--- a/modules/pseudoclients/operserv.cpp
+++ b/modules/pseudoclients/operserv.cpp
@@ -132,12 +132,16 @@ class SNLineManager : public XLineManager
void Send(User *u, XLine *x) anope_override
{
- IRCD->SendSGLine(u, x);
+ if (IRCD->CanSNLine)
+ IRCD->SendSGLine(u, x);
+ else
+ u->Kill(Config->GetClient("OperServ"), "SNLined: " + x->reason);
}
void SendDel(XLine *x) anope_override
{
- IRCD->SendSGLineDel(x);
+ if (IRCD->CanSNLine)
+ IRCD->SendSGLineDel(x);
}
bool Check(User *u, const XLine *x) anope_override