mirror of
https://github.com/anope/anope.git
synced 2026-07-04 00:23:12 +02:00
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
This commit is contained in:
@@ -16,7 +16,7 @@ class CommandOSSet : public Command
|
||||
private:
|
||||
void DoList(CommandSource &source)
|
||||
{
|
||||
Log(LOG_ADMIN, source, this);
|
||||
Log(LOG_ADMIN, source, this) << "LIST";
|
||||
|
||||
Anope::string index;
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
+1
-6
@@ -213,13 +213,8 @@ void XLineManager::CheckAll(User *u)
|
||||
{
|
||||
XLineManager *xlm = *it;
|
||||
|
||||
XLine *x = xlm->CheckAllXLines(u);
|
||||
|
||||
if (x)
|
||||
{
|
||||
xlm->OnMatch(u, x);
|
||||
if (xlm->CheckAllXLines(u))
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user