aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Sadie Powell2022-05-17 13:41:40 +0100
committerGravatar Sadie Powell2022-05-17 13:45:18 +0100
commitc31e4c6a970b844e500f3feb807e1801b2d55543 (patch)
tree8ccef31dd5f1dbe97ee42573bbfe54beae2e5f7e /src
parentStore a set of list mode pointers in Membership instead of characters. (diff)
Add a typedef for a mode rank.
Diffstat (limited to 'src')
-rw-r--r--src/channels.cpp6
-rw-r--r--src/coremods/core_channel/cmd_invite.cpp4
-rw-r--r--src/coremods/core_channel/cmd_kick.cpp4
-rw-r--r--src/coremods/core_channel/core_channel.cpp2
-rw-r--r--src/coremods/core_who.cpp4
-rw-r--r--src/mode.cpp12
-rw-r--r--src/modules.cpp2
-rw-r--r--src/modules/m_autoop.cpp2
-rw-r--r--src/modules/m_customprefix.cpp22
-rw-r--r--src/modules/m_exemptchanops.cpp2
-rw-r--r--src/modules/m_hidelist.cpp6
-rw-r--r--src/modules/m_hidemode.cpp4
-rw-r--r--src/modules/m_ircv3_ctctags.cpp2
-rw-r--r--src/modules/m_ircv3_invitenotify.cpp2
-rw-r--r--src/modules/m_ojoin.cpp2
-rw-r--r--src/modules/m_operprefix.cpp2
-rw-r--r--src/modules/m_override.cpp4
-rw-r--r--src/modules/m_remove.cpp6
-rw-r--r--src/modules/m_spanningtree/main.cpp2
-rw-r--r--src/modules/m_spanningtree/main.h2
-rw-r--r--src/modules/m_spanningtree/utils.cpp2
-rw-r--r--src/modules/m_timedbans.cpp2
22 files changed, 49 insertions, 47 deletions
diff --git a/src/channels.cpp b/src/channels.cpp
index 0e75bdee6..cfc130018 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -367,7 +367,7 @@ void Channel::KickUser(User* src, const MemberMap::iterator& victimiter, const s
void Channel::Write(ClientProtocol::Event& protoev, char status, const CUList& except_list)
{
- unsigned int minrank = 0;
+ ModeHandler::Rank minrank = 0;
if (status)
{
PrefixMode* mh = ServerInstance->Modes.FindPrefix(status);
@@ -441,7 +441,7 @@ void Channel::WriteRemoteNotice(const std::string& text, char status)
char Membership::GetPrefixChar() const
{
char pf = 0;
- unsigned int bestrank = 0;
+ ModeHandler::Rank bestrank = 0;
for (const auto& mh : modes)
{
@@ -478,7 +478,7 @@ std::string Membership::GetAllPrefixModes() const
return ret;
}
-unsigned int Channel::GetPrefixValue(User* user)
+ModeHandler::Rank Channel::GetPrefixValue(User* user)
{
MemberMap::iterator m = userlist.find(user);
if (m == userlist.end())
diff --git a/src/coremods/core_channel/cmd_invite.cpp b/src/coremods/core_channel/cmd_invite.cpp
index 9aa0467b3..88b16e391 100644
--- a/src/coremods/core_channel/cmd_invite.cpp
+++ b/src/coremods/core_channel/cmd_invite.cpp
@@ -122,7 +122,7 @@ CmdResult CommandInvite::Handle(User* user, const Params& parameters)
{
if (IS_LOCAL(user))
{
- unsigned int rank = c->GetPrefixValue(user);
+ ModeHandler::Rank rank = c->GetPrefixValue(user);
if (rank < HALFOP_VALUE)
{
user->WriteNumeric(Numerics::ChannelPrivilegesNeeded(c, HALFOP_VALUE, "send an invite"));
@@ -147,7 +147,7 @@ CmdResult CommandInvite::Handle(User* user, const Params& parameters)
}
char prefix = 0;
- unsigned int minrank = 0;
+ ModeHandler::Rank minrank = 0;
switch (invapi.announceinvites)
{
case Invite::ANNOUNCE_OPS:
diff --git a/src/coremods/core_channel/cmd_kick.cpp b/src/coremods/core_channel/cmd_kick.cpp
index 2ed726809..3e6447225 100644
--- a/src/coremods/core_channel/cmd_kick.cpp
+++ b/src/coremods/core_channel/cmd_kick.cpp
@@ -104,8 +104,8 @@ CmdResult CommandKick::Handle(User* user, const Params& parameters)
if (res == MOD_RES_PASSTHRU)
{
- unsigned int them = srcmemb->GetRank();
- unsigned int req = HALFOP_VALUE;
+ ModeHandler::Rank them = srcmemb->GetRank();
+ ModeHandler::Rank req = HALFOP_VALUE;
for (const auto& mh : memb->modes)
{
if (mh->GetLevelRequired(true) > req)
diff --git a/src/coremods/core_channel/core_channel.cpp b/src/coremods/core_channel/core_channel.cpp
index f5a0d4734..7855cab6b 100644
--- a/src/coremods/core_channel/core_channel.cpp
+++ b/src/coremods/core_channel/core_channel.cpp
@@ -363,7 +363,7 @@ public:
if (!exemptions.count(restriction))
return MOD_RES_PASSTHRU;
- unsigned int mypfx = chan->GetPrefixValue(user);
+ ModeHandler::Rank mypfx = chan->GetPrefixValue(user);
char minmode = exemptions[restriction];
PrefixMode* mh = ServerInstance->Modes.FindPrefixMode(minmode);
diff --git a/src/coremods/core_who.cpp b/src/coremods/core_who.cpp
index ae55d0a7d..b0f4a7456 100644
--- a/src/coremods/core_who.cpp
+++ b/src/coremods/core_who.cpp
@@ -128,12 +128,12 @@ private:
void BuildOpLevels()
{
// Build a map of prefixes ordered descending by their rank.
- std::multimap<unsigned int, const PrefixMode*, std::greater<>> ranks;
+ std::multimap<ModeHandler::Rank, const PrefixMode*, std::greater<>> ranks;
for (const auto& pm : ServerInstance->Modes.GetPrefixModes())
ranks.insert(std::make_pair(pm->GetPrefixRank(), pm));
// Now we have the ranks ordered we can assign them levels.
- unsigned int lastrank = 0;
+ ModeHandler::Rank lastrank = 0;
unsigned int oplevel = 0;
for (const auto& [_, pm] : ranks)
{
diff --git a/src/mode.cpp b/src/mode.cpp
index 22a2c29d1..f0538f457 100644
--- a/src/mode.cpp
+++ b/src/mode.cpp
@@ -171,10 +171,10 @@ void ModeWatcher::AfterMode(User*, User*, Channel*, const Modes::Change&)
{
}
-PrefixMode::PrefixMode(Module* Creator, const std::string& Name, char ModeLetter, unsigned int Rank, char PrefixChar)
+PrefixMode::PrefixMode(Module* Creator, const std::string& Name, char ModeLetter, Rank PrefixRank, char PrefixChar)
: ModeHandler(Creator, Name, ModeLetter, PARAM_ALWAYS, MODETYPE_CHANNEL, MC_PREFIX)
, prefix(PrefixChar)
- , prefixrank(Rank)
+ , prefixrank(PrefixRank)
{
list = true;
syntax = "<nick>";
@@ -209,7 +209,7 @@ ModeAction PrefixMode::OnModeChange(User* source, User*, Channel* chan, Modes::C
return (memb->SetPrefix(this, change.adding) ? MODEACTION_ALLOW : MODEACTION_DENY);
}
-void PrefixMode::Update(unsigned int rank, unsigned int setrank, unsigned int unsetrank, bool selfrm)
+void PrefixMode::Update(ModeHandler::Rank rank, ModeHandler::Rank setrank, ModeHandler::Rank unsetrank, bool selfrm)
{
prefixrank = rank;
ranktoset = setrank;
@@ -270,8 +270,8 @@ ModeAction ModeParser::TryMode(User* user, User* targetuser, Channel* chan, Mode
return MODEACTION_DENY;
if (MOD_RESULT == MOD_RES_PASSTHRU)
{
- unsigned int neededrank = mh->GetLevelRequired(mcitem.adding);
- unsigned int ourrank = chan->GetPrefixValue(user);
+ ModeHandler::Rank neededrank = mh->GetLevelRequired(mcitem.adding);
+ ModeHandler::Rank ourrank = chan->GetPrefixValue(user);
if (ourrank < neededrank)
{
user->WriteNumeric(Numerics::ChannelPrivilegesNeeded(chan, neededrank, InspIRCd::Format("%s channel mode %c (%s)",
@@ -710,7 +710,7 @@ PrefixMode* ModeParser::FindPrefixMode(unsigned char modeletter)
}
-PrefixMode* ModeParser::FindNearestPrefixMode(unsigned int rank)
+PrefixMode* ModeParser::FindNearestPrefixMode(ModeHandler::Rank rank)
{
PrefixMode* pm = nullptr;
for (const auto& thispm : GetPrefixModes())
diff --git a/src/modules.cpp b/src/modules.cpp
index ccc3d086a..c16ddf5ef 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -140,7 +140,7 @@ ModResult Module::OnPassCompare(Extensible* ex, const std::string &password, con
void Module::OnPostConnect(User*) { DetachEvent(I_OnPostConnect); }
void Module::OnUserPostMessage(User*, const MessageTarget&, const MessageDetails&) { DetachEvent(I_OnUserPostMessage); }
void Module::OnUserMessageBlocked(User*, const MessageTarget&, const MessageDetails&) { DetachEvent(I_OnUserMessageBlocked); }
-void Module::OnUserInvite(User*, User*, Channel*, time_t, unsigned int, CUList&) { DetachEvent(I_OnUserInvite); }
+void Module::OnUserInvite(User*, User*, Channel*, time_t, ModeHandler::Rank, CUList&) { DetachEvent(I_OnUserInvite); }
void Module::OnPostTopicChange(User*, Channel*, const std::string&) { DetachEvent(I_OnPostTopicChange); }
void Module::OnDecodeMetaData(Extensible*, const std::string&, const std::string&) { DetachEvent(I_OnDecodeMetaData); }
void Module::OnChangeHost(User*, const std::string&) { DetachEvent(I_OnChangeHost); }
diff --git a/src/modules/m_autoop.cpp b/src/modules/m_autoop.cpp
index 23b4b9c0d..c7bd7039c 100644
--- a/src/modules/m_autoop.cpp
+++ b/src/modules/m_autoop.cpp
@@ -57,7 +57,7 @@ public:
if (pos == 0 || pos == std::string::npos)
return change.adding ? MOD_RES_DENY : MOD_RES_PASSTHRU;
- unsigned int mylevel = channel->GetPrefixValue(source);
+ ModeHandler::Rank mylevel = channel->GetPrefixValue(source);
std::string mid(change.param, 0, pos);
PrefixMode* mh = FindMode(mid);
diff --git a/src/modules/m_customprefix.cpp b/src/modules/m_customprefix.cpp
index 093f8a9e0..5dce050a3 100644
--- a/src/modules/m_customprefix.cpp
+++ b/src/modules/m_customprefix.cpp
@@ -32,14 +32,15 @@ public:
: PrefixMode(parent, Name, Letter, 0, Prefix)
, tag(Tag)
{
- unsigned int rank = static_cast<unsigned int>(tag->getUInt("rank", 1, 1, UINT_MAX));
- unsigned int setrank = static_cast<unsigned int>(tag->getUInt("ranktoset", prefixrank, rank, UINT_MAX));
- unsigned int unsetrank = static_cast<unsigned int>(tag->getUInt("ranktounset", setrank, setrank, UINT_MAX));
+ ModeHandler::Rank rank = static_cast<ModeHandler::Rank>(tag->getUInt("rank", 1, 1, std::numeric_limits<ModeHandler::Rank>::max()));
+ ModeHandler::Rank setrank = static_cast<ModeHandler::Rank>(tag->getUInt("ranktoset", prefixrank, rank, std::numeric_limits<ModeHandler::Rank>::max()));
+ ModeHandler::Rank unsetrank = static_cast<ModeHandler::Rank>(tag->getUInt("ranktounset", setrank, setrank, std::numeric_limits<ModeHandler::Rank>::max()));
bool depriv = tag->getBool("depriv", true);
this->Update(rank, setrank, unsetrank, depriv);
- ServerInstance->Logs.Debug(MODNAME, "Created the %s prefix: letter=%c prefix=%c rank=%u ranktoset=%u ranktounset=%i depriv=%d",
- name.c_str(), GetModeChar(), GetPrefix(), GetPrefixRank(), GetLevelRequired(true), GetLevelRequired(false), CanSelfRemove());
+ ServerInstance->Logs.Debug(MODNAME, "Created the %s prefix: letter=%c prefix=%c rank=%lu ranktoset=%lu ranktounset=%lu depriv=%s",
+ name.c_str(), GetModeChar(), GetPrefix(), GetPrefixRank(), GetLevelRequired(true), GetLevelRequired(false),
+ CanSelfRemove() ? "yes" : "no");
}
};
@@ -76,14 +77,15 @@ public:
if (!pm)
throw ModuleException(this, "<customprefix:change> specified for a non-prefix mode at " + tag->source.str());
- unsigned int rank = static_cast<unsigned int>(tag->getUInt("rank", pm->GetPrefixRank(), 0, UINT_MAX));
- unsigned int setrank = static_cast<unsigned int>(tag->getUInt("ranktoset", pm->GetLevelRequired(true), rank, UINT_MAX));
- unsigned int unsetrank = static_cast<unsigned int>(tag->getUInt("ranktounset", pm->GetLevelRequired(false), setrank, UINT_MAX));
+ ModeHandler::Rank rank = static_cast<ModeHandler::Rank>(tag->getUInt("rank", pm->GetPrefixRank(), 1, std::numeric_limits<ModeHandler::Rank>::max()));
+ ModeHandler::Rank setrank = static_cast<ModeHandler::Rank>(tag->getUInt("ranktoset", pm->GetLevelRequired(true), rank, std::numeric_limits<ModeHandler::Rank>::max()));
+ ModeHandler::Rank unsetrank = static_cast<ModeHandler::Rank>(tag->getUInt("ranktounset", pm->GetLevelRequired(false), setrank, std::numeric_limits<ModeHandler::Rank>::max()));
bool depriv = tag->getBool("depriv", pm->CanSelfRemove());
pm->Update(rank, setrank, unsetrank, depriv);
- ServerInstance->Logs.Debug(MODNAME, "Changed the %s prefix: depriv=%u rank=%u ranktoset=%u ranktounset=%u",
- pm->name.c_str(), pm->CanSelfRemove(), pm->GetPrefixRank(), pm->GetLevelRequired(true), pm->GetLevelRequired(false));
+ ServerInstance->Logs.Debug(MODNAME, "Changed the %s prefix: letter=%c prefix=%c rank=%lu ranktoset=%lu ranktounset=%lu depriv=%s",
+ name.c_str(), pm->GetModeChar(), pm->GetPrefix(), pm->GetPrefixRank(), pm->GetLevelRequired(true),
+ pm->GetLevelRequired(false), pm->CanSelfRemove() ? "yes" : "no");
continue;
}
diff --git a/src/modules/m_exemptchanops.cpp b/src/modules/m_exemptchanops.cpp
index c384e723f..9c366f1f3 100644
--- a/src/modules/m_exemptchanops.cpp
+++ b/src/modules/m_exemptchanops.cpp
@@ -127,7 +127,7 @@ public:
ModResult OnCheckExemption(User* user, Channel* chan, const std::string& restriction) override
{
- unsigned int mypfx = chan->GetPrefixValue(user);
+ ModeHandler::Rank mypfx = chan->GetPrefixValue(user);
std::string minmode;
ListModeBase::ModeList* list = ec.GetList(chan);
diff --git a/src/modules/m_hidelist.cpp b/src/modules/m_hidelist.cpp
index 00d9a615d..27903e8eb 100644
--- a/src/modules/m_hidelist.cpp
+++ b/src/modules/m_hidelist.cpp
@@ -25,10 +25,10 @@ class ListWatcher final
: public ModeWatcher
{
// Minimum rank required to view the list
- const unsigned int minrank;
+ const ModeHandler::Rank minrank;
public:
- ListWatcher(Module* mod, const std::string& modename, unsigned int rank)
+ ListWatcher(Module* mod, const std::string& modename, ModeHandler::Rank rank)
: ModeWatcher(mod, modename, MODETYPE_CHANNEL)
, minrank(rank)
{
@@ -70,7 +70,7 @@ public:
throw ModuleException(this, "Empty <hidelist:mode> at " + tag->source.str());
// If rank is set to 0 everyone inside the channel can view the list,
// but non-members may not
- unsigned long rank = tag->getUInt("rank", HALFOP_VALUE);
+ ModeHandler::Rank rank = tag->getUInt("rank", HALFOP_VALUE);
newconfigs.push_back(std::make_pair(modename, rank));
}
diff --git a/src/modules/m_hidemode.cpp b/src/modules/m_hidemode.cpp
index 56acdd01e..2dee42a2a 100644
--- a/src/modules/m_hidemode.cpp
+++ b/src/modules/m_hidemode.cpp
@@ -62,7 +62,7 @@ public:
class ModeHook final
: public ClientProtocol::EventHook
{
- typedef insp::flat_map<unsigned int, const ClientProtocol::MessageList*> FilteredModeMap;
+ typedef insp::flat_map<ModeHandler::Rank, const ClientProtocol::MessageList*> FilteredModeMap;
std::vector<Modes::ChangeList> modechangelists;
std::list<ClientProtocol::Messages::Mode> filteredmodelist;
@@ -82,7 +82,7 @@ class ModeHook final
return MOD_RES_PASSTHRU;
}
- Modes::ChangeList* FilterModeChangeList(const ClientProtocol::Events::Mode& mode, unsigned int rank)
+ Modes::ChangeList* FilterModeChangeList(const ClientProtocol::Events::Mode& mode, ModeHandler::Rank rank)
{
Modes::ChangeList* modechangelist = NULL;
for (Modes::ChangeList::List::const_iterator i = mode.GetChangeList().getlist().begin(); i != mode.GetChangeList().getlist().end(); ++i)
diff --git a/src/modules/m_ircv3_ctctags.cpp b/src/modules/m_ircv3_ctctags.cpp
index b2b059a7a..afa5341dc 100644
--- a/src/modules/m_ircv3_ctctags.cpp
+++ b/src/modules/m_ircv3_ctctags.cpp
@@ -82,7 +82,7 @@ private:
if (!FirePreEvents(source, msgtarget, msgdetails))
return CmdResult::FAILURE;
- unsigned int minrank = pm ? pm->GetPrefixRank() : 0;
+ ModeHandler::Rank minrank = pm ? pm->GetPrefixRank() : 0;
CTCTags::TagMessage message(source, chan, msgdetails.tags_out, msgtarget.status);
message.SetSideEffect(true);
diff --git a/src/modules/m_ircv3_invitenotify.cpp b/src/modules/m_ircv3_invitenotify.cpp
index 916d6fa6f..a5fe298d6 100644
--- a/src/modules/m_ircv3_invitenotify.cpp
+++ b/src/modules/m_ircv3_invitenotify.cpp
@@ -33,7 +33,7 @@ public:
{
}
- void OnUserInvite(User* source, User* dest, Channel* chan, time_t expiry, unsigned int notifyrank, CUList& notifyexcepts) override
+ void OnUserInvite(User* source, User* dest, Channel* chan, time_t expiry, ModeHandler::Rank notifyrank, CUList& notifyexcepts) override
{
ClientProtocol::Messages::Invite invitemsg(source, dest, chan);
ClientProtocol::Event inviteevent(ServerInstance->GetRFCEvents().invite, invitemsg);
diff --git a/src/modules/m_ojoin.cpp b/src/modules/m_ojoin.cpp
index 76e0e51f6..7b28bff3f 100644
--- a/src/modules/m_ojoin.cpp
+++ b/src/modules/m_ojoin.cpp
@@ -91,7 +91,7 @@ public:
NetworkPrefix(Module* parent, char NPrefix)
: PrefixMode(parent, "official-join", 'Y', NETWORK_VALUE, NPrefix)
{
- ranktoset = ranktounset = UINT_MAX;
+ ranktoset = ranktounset = std::numeric_limits<ModeHandler::Rank>::max();
}
ModResult AccessCheck(User* source, Channel* channel, Modes::Change& change) override
diff --git a/src/modules/m_operprefix.cpp b/src/modules/m_operprefix.cpp
index 3e22ddd8c..bc8236798 100644
--- a/src/modules/m_operprefix.cpp
+++ b/src/modules/m_operprefix.cpp
@@ -39,7 +39,7 @@ class OperPrefixMode final
: PrefixMode(Creator, "operprefix", 'y', OPERPREFIX_VALUE)
{
prefix = ServerInstance->Config->ConfValue("operprefix")->getCharacter("prefix", '!');
- ranktoset = ranktounset = UINT_MAX;
+ ranktoset = ranktounset = std::numeric_limits<ModeHandler::Rank>::max();
}
};
diff --git a/src/modules/m_override.cpp b/src/modules/m_override.cpp
index 684557820..7823b1869 100644
--- a/src/modules/m_override.cpp
+++ b/src/modules/m_override.cpp
@@ -99,7 +99,7 @@ private:
ChanModeReference limit;
Invite::API invapi;
- static bool IsOverride(unsigned int userlevel, const Modes::ChangeList::List& list)
+ static bool IsOverride(ModeHandler::Rank userlevel, const Modes::ChangeList::List& list)
{
for (const auto& change : list)
{
@@ -206,7 +206,7 @@ public:
return MOD_RES_PASSTHRU;
const Modes::ChangeList::List& list = modes.getlist();
- unsigned int mode = channel->GetPrefixValue(source);
+ ModeHandler::Rank mode = channel->GetPrefixValue(source);
if (!IsOverride(mode, list))
return MOD_RES_PASSTHRU;
diff --git a/src/modules/m_remove.cpp b/src/modules/m_remove.cpp
index 5b41b1ccf..0ffaa007a 100644
--- a/src/modules/m_remove.cpp
+++ b/src/modules/m_remove.cpp
@@ -39,7 +39,7 @@ private:
UserModeReference servprotectmode;
public:
- unsigned long protectedrank;
+ ModeHandler::Rank protectedrank;
bool supportnokicks;
CommandRemove(Module* Creator)
@@ -100,8 +100,8 @@ public:
* a services target will get a higher level than it's possible for a /remover to get..so they're safe.
* Nobody may remove people with >= protectedrank rank.
*/
- unsigned int ulevel = channel->GetPrefixValue(user);
- unsigned int tlevel = channel->GetPrefixValue(target);
+ ModeHandler::Rank ulevel = channel->GetPrefixValue(user);
+ ModeHandler::Rank tlevel = channel->GetPrefixValue(target);
if ((!IS_LOCAL(user)) || ((ulevel > VOICE_VALUE) && (ulevel >= tlevel) && ((protectedrank == 0) || (tlevel < protectedrank))))
{
// REMOVE will be sent to the target's server and it will reply with a PART (or do nothing if it doesn't understand the command)
diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp
index fd130c787..cc5f27ccc 100644
--- a/src/modules/m_spanningtree/main.cpp
+++ b/src/modules/m_spanningtree/main.cpp
@@ -374,7 +374,7 @@ ModResult ModuleSpanningTree::HandleConnect(const CommandBase::Params& parameter
return MOD_RES_DENY;
}
-void ModuleSpanningTree::OnUserInvite(User* source, User* dest, Channel* channel, time_t expiry, unsigned int notifyrank, CUList& notifyexcepts)
+void ModuleSpanningTree::OnUserInvite(User* source, User* dest, Channel* channel, time_t expiry, ModeHandler::Rank notifyrank, CUList& notifyexcepts)
{
if (IS_LOCAL(source))
{
diff --git a/src/modules/m_spanningtree/main.h b/src/modules/m_spanningtree/main.h
index 81ac1e9eb..d4edfebef 100644
--- a/src/modules/m_spanningtree/main.h
+++ b/src/modules/m_spanningtree/main.h
@@ -179,7 +179,7 @@ public:
ModResult OnPreCommand(std::string& command, CommandBase::Params& parameters, LocalUser* user, bool validated) override;
void OnPostCommand(Command*, const CommandBase::Params& parameters, LocalUser* user, CmdResult result, bool loop) override;
void OnUserConnect(LocalUser* source) override;
- void OnUserInvite(User* source, User* dest, Channel* channel, time_t timeout, unsigned int notifyrank, CUList& notifyexcepts) override;
+ void OnUserInvite(User* source, User* dest, Channel* channel, time_t timeout, ModeHandler::Rank notifyrank, CUList& notifyexcepts) override;
ModResult OnPreTopicChange(User* user, Channel* chan, const std::string& topic) override;
void OnPostTopicChange(User* user, Channel* chan, const std::string &topic) override;
void OnUserPostMessage(User* user, const MessageTarget& target, const MessageDetails& details) override;
diff --git a/src/modules/m_spanningtree/utils.cpp b/src/modules/m_spanningtree/utils.cpp
index e104bd63d..1d42af1ea 100644
--- a/src/modules/m_spanningtree/utils.cpp
+++ b/src/modules/m_spanningtree/utils.cpp
@@ -137,7 +137,7 @@ SpanningTreeUtilities::~SpanningTreeUtilities()
// Returns a list of DIRECT servers for a specific channel
void SpanningTreeUtilities::GetListOfServersForChannel(Channel* c, TreeSocketSet& list, char status, const CUList& exempt_list)
{
- unsigned int minrank = 0;
+ ModeHandler::Rank minrank = 0;
if (status)
{
PrefixMode* mh = ServerInstance->Modes.FindPrefix(status);
diff --git a/src/modules/m_timedbans.cpp b/src/modules/m_timedbans.cpp
index f33d5d43b..432d1d09a 100644
--- a/src/modules/m_timedbans.cpp
+++ b/src/modules/m_timedbans.cpp
@@ -89,7 +89,7 @@ public:
return CmdResult::FAILURE;
}
- unsigned int cm = channel->GetPrefixValue(user);
+ ModeHandler::Rank cm = channel->GetPrefixValue(user);
if (cm < HALFOP_VALUE)
{
user->WriteNumeric(Numerics::ChannelPrivilegesNeeded(channel, HALFOP_VALUE, "set timed bans"));