From 8f901b33a8d2ee0d318ae5feba3d84f1af939f22 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Tue, 18 Feb 2014 13:41:01 +0100 Subject: [PATCH] Change the parameter type of ModeHandler::GiveModeList() from ModeMasks to ModeType --- include/mode.h | 2 +- src/mode.cpp | 4 ++-- src/modules/m_spanningtree/capab.cpp | 8 ++++---- src/server.cpp | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/mode.h b/include/mode.h index 3193af65f..f0609fec2 100644 --- a/include/mode.h +++ b/include/mode.h @@ -682,7 +682,7 @@ class CoreExport ModeParser * 3; Modes that only take a param when adding * 4; Modes that dont take a param */ - std::string GiveModeList(ModeMasks m); + std::string GiveModeList(ModeType mt); /** This returns the PREFIX=(ohv)@%+ section of the 005 numeric, or * just the "@%+" part if the parameter false diff --git a/src/mode.cpp b/src/mode.cpp index eeab0de3a..90b8efeb8 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -764,7 +764,7 @@ PrefixMode* ModeParser::FindPrefix(unsigned const char pfxletter) return NULL; } -std::string ModeParser::GiveModeList(ModeMasks m) +std::string ModeParser::GiveModeList(ModeType mt) { std::string type1; /* Listmodes EXCEPT those with a prefix */ std::string type2; /* Modes that take a param when adding or removing */ @@ -773,7 +773,7 @@ std::string ModeParser::GiveModeList(ModeMasks m) for (unsigned char mode = 'A'; mode <= 'z'; mode++) { - unsigned char pos = (mode-65) | m; + unsigned char pos = (mode-65) | ((mt == MODETYPE_CHANNEL) ? MASK_CHANNEL : MASK_USER); /* One parameter when adding */ if (modehandlers[pos]) { diff --git a/src/modules/m_spanningtree/capab.cpp b/src/modules/m_spanningtree/capab.cpp index c52dffa41..dc48c87df 100644 --- a/src/modules/m_spanningtree/capab.cpp +++ b/src/modules/m_spanningtree/capab.cpp @@ -151,8 +151,8 @@ void TreeSocket::SendCapabilities(int phase) " MAXAWAY="+ConvToStr(ServerInstance->Config->Limits.MaxAway)+ extra+ " PREFIX="+ServerInstance->Modes->BuildPrefixes()+ - " CHANMODES="+ServerInstance->Modes->GiveModeList(MASK_CHANNEL)+ - " USERMODES="+ServerInstance->Modes->GiveModeList(MASK_USER) + " CHANMODES="+ServerInstance->Modes->GiveModeList(MODETYPE_CHANNEL)+ + " USERMODES="+ServerInstance->Modes->GiveModeList(MODETYPE_USER) ); this->WriteLine("CAPAB END"); @@ -283,7 +283,7 @@ bool TreeSocket::Capab(const parameterlist ¶ms) } else if (this->capab->CapKeys.find("CHANMODES") != this->capab->CapKeys.end()) { - if (this->capab->CapKeys.find("CHANMODES")->second != ServerInstance->Modes->GiveModeList(MASK_CHANNEL)) + if (this->capab->CapKeys.find("CHANMODES")->second != ServerInstance->Modes->GiveModeList(MODETYPE_CHANNEL)) reason = "One or more of the channel modes on the remote server are invalid on this server."; } @@ -305,7 +305,7 @@ bool TreeSocket::Capab(const parameterlist ¶ms) } else if (this->capab->CapKeys.find("USERMODES") != this->capab->CapKeys.end()) { - if (this->capab->CapKeys.find("USERMODES")->second != ServerInstance->Modes->GiveModeList(MASK_USER)) + if (this->capab->CapKeys.find("USERMODES")->second != ServerInstance->Modes->GiveModeList(MODETYPE_USER)) reason = "One or more of the user modes on the remote server are invalid on this server."; } diff --git a/src/server.cpp b/src/server.cpp index 5590f05f9..9e58c9cff 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -169,7 +169,7 @@ void ISupportManager::Build() tokens["AWAYLEN"] = ConvToStr(ServerInstance->Config->Limits.MaxAway); tokens["CASEMAPPING"] = "rfc1459"; - tokens["CHANMODES"] = ServerInstance->Modes->GiveModeList(MASK_CHANNEL); + tokens["CHANMODES"] = ServerInstance->Modes->GiveModeList(MODETYPE_CHANNEL); tokens["CHANNELLEN"] = ConvToStr(ServerInstance->Config->Limits.ChanMax); tokens["CHANTYPES"] = "#"; tokens["ELIST"] = "MU"; -- 2.39.5