From 55e4ef9d3a5dc7e3b616e1369aac01ea1c76780d Mon Sep 17 00:00:00 2001 From: Adam Date: Sun, 8 Sep 2013 06:02:35 -0400 Subject: 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 --- modules/pseudoclients/operserv.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'modules/pseudoclients') 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 -- cgit