From ee44af8d04f23b4a16c9b377764f930d69e575f7 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Sun, 27 Nov 2022 07:32:42 +0000 Subject: Refactor the internals of the oper system. - Allow overriding privileges from the blocks in the and blocks. - Separate oper types from oper accounts in the code. This enables moving some core stuff out of the config tag later. - Merge the config tags together to make a synthetic tag that can have getXXX called on it instead of using getConfig and then converting it. - Move the details of Have*Permission into the oper type class. - Improve oper events to allow modules to easily hook into the oper system. --- src/modules/m_operprefix.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/modules/m_operprefix.cpp') diff --git a/src/modules/m_operprefix.cpp b/src/modules/m_operprefix.cpp index e44408f03..a3fae72e4 100644 --- a/src/modules/m_operprefix.cpp +++ b/src/modules/m_operprefix.cpp @@ -104,7 +104,7 @@ public: ServerInstance->Modes.Process(ServerInstance->FakeClient, memb->chan, nullptr, changelist); } - void OnPostOper(User* user) override + void OnPostOperLogin(User* user) override { if (IS_LOCAL(user) && (!user->IsModeSet(hideopermode))) SetOperPrefix(user, true); @@ -114,7 +114,7 @@ public: { // m_opermodes may set +H on the oper to hide him, we don't want to set the oper prefix in that case Module* opermodes = ServerInstance->Modules.Find("opermodes"); - ServerInstance->Modules.SetPriority(this, I_OnPostOper, PRIORITY_AFTER, opermodes); + ServerInstance->Modules.SetPriority(this, I_OnPostOperLogin, PRIORITY_AFTER, opermodes); } }; -- cgit v1.3.1-10-gc9f91