diff options
| author | 2022-10-29 13:30:39 +0100 | |
|---|---|---|
| committer | 2022-10-29 13:43:11 +0100 | |
| commit | 5a508c19ff3dec65bb4148883d38127d7c0be79e (patch) | |
| tree | 2bdfcbadfdfbe0a6fd244260a9570be86a3eb8d4 /src/modules | |
| parent | Allow UserManager::Find{Nick,UUID,} to ignore unregistered users. (diff) | |
Use User::IsFullyConnected instead of checking for REG_ALL.
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/m_alias.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_blockamsg.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_cap.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_chghost.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_cloaking.cpp | 4 | ||||
| -rw-r--r-- | src/modules/m_disable.cpp | 4 | ||||
| -rw-r--r-- | src/modules/m_gateway.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_httpd_stats.cpp | 4 | ||||
| -rw-r--r-- | src/modules/m_ident.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_ircv3_ctctags.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_ircv3_labeledresponse.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_shun.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_spanningtree/main.cpp | 12 | ||||
| -rw-r--r-- | src/modules/m_spanningtree/netburst.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_spanningtree/uid.cpp | 2 | ||||
| -rw-r--r-- | src/modules/m_starttls.cpp | 2 |
16 files changed, 24 insertions, 24 deletions
diff --git a/src/modules/m_alias.cpp b/src/modules/m_alias.cpp index b7de8c8a7..1a02b2972 100644 --- a/src/modules/m_alias.cpp +++ b/src/modules/m_alias.cpp @@ -163,7 +163,7 @@ public: /* If they're not registered yet, we dont want * to know. */ - if (user->registered != REG_ALL) + if (!user->IsFullyConnected()) return MOD_RES_PASSTHRU; /* We dont have any commands looking like this? Stop processing. */ diff --git a/src/modules/m_blockamsg.cpp b/src/modules/m_blockamsg.cpp index 8fe7bfccc..793ec389d 100644 --- a/src/modules/m_blockamsg.cpp +++ b/src/modules/m_blockamsg.cpp @@ -78,7 +78,7 @@ public: ModResult OnPreCommand(std::string& command, CommandBase::Params& parameters, LocalUser* user, bool validated) override { // Don't do anything with unregistered users - if (user->registered != REG_ALL) + if (!user->IsFullyConnected()) return MOD_RES_PASSTHRU; if ((validated) && (parameters.size() >= 2) && ((command == "PRIVMSG") || (command == "NOTICE"))) diff --git a/src/modules/m_cap.cpp b/src/modules/m_cap.cpp index 63afcbeba..5f927438b 100644 --- a/src/modules/m_cap.cpp +++ b/src/modules/m_cap.cpp @@ -409,7 +409,7 @@ public: CmdResult HandleLocal(LocalUser* user, const Params& parameters) override { - if (user->registered != REG_ALL) + if (!user->IsFullyConnected()) holdext.Set(user); const std::string& subcommand = parameters[0]; diff --git a/src/modules/m_chghost.cpp b/src/modules/m_chghost.cpp index a0d3356ff..c98ea0208 100644 --- a/src/modules/m_chghost.cpp +++ b/src/modules/m_chghost.cpp @@ -60,7 +60,7 @@ public: auto dest = ServerInstance->Users.Find(parameters[0]); // Allow services to change the host of unregistered users - if ((!dest) || ((dest->registered != REG_ALL) && (!user->server->IsService()))) + if (!dest || (!dest->IsFullyConnected() && !user->server->IsService())) { user->WriteNumeric(Numerics::NoSuchNick(parameters[0])); return CmdResult::FAILURE; diff --git a/src/modules/m_cloaking.cpp b/src/modules/m_cloaking.cpp index 5d35173d1..3c25e0a58 100644 --- a/src/modules/m_cloaking.cpp +++ b/src/modules/m_cloaking.cpp @@ -153,7 +153,7 @@ public: if (change.adding) { // assume this is more correct - if (user->registered != REG_ALL && user->GetRealHost() != user->GetDisplayedHost()) + if (!user->IsFullyConnected() && user->GetRealHost() != user->GetDisplayedHost()) return MODEACTION_DENY; CloakList* cloaks = ext.Get(user); @@ -535,7 +535,7 @@ public: void OnChangeRemoteAddress(LocalUser* user) override { // Connecting users are handled in OnUserConnect not here. - if (user->registered != REG_ALL || user->quitting) + if (!user->IsFullyConnected() || user->quitting) return; // Remove the cloaks and generate new ones. diff --git a/src/modules/m_disable.cpp b/src/modules/m_disable.cpp index 57f471d13..c718d0abc 100644 --- a/src/modules/m_disable.cpp +++ b/src/modules/m_disable.cpp @@ -142,7 +142,7 @@ public: ModResult OnPreCommand(std::string& command, CommandBase::Params& parameters, LocalUser* user, bool validated) override { // If a command is unvalidated or the source is not registered we do nothing. - if (!validated || user->registered != REG_ALL) + if (!validated || !user->IsFullyConnected()) return MOD_RES_PASSTHRU; // If the command is not disabled or the user has the servers/use-disabled-commands priv we do nothing. @@ -170,7 +170,7 @@ public: ModResult OnRawMode(User* user, Channel* chan, const Modes::Change& change) override { // If a mode change is remote or the source is not registered we do nothing. - if (!IS_LOCAL(user) || user->registered != REG_ALL) + if (!IS_LOCAL(user) || !user->IsFullyConnected()) return MOD_RES_PASSTHRU; // If the mode is not disabled or the user has the servers/use-disabled-modes priv we do nothing. diff --git a/src/modules/m_gateway.cpp b/src/modules/m_gateway.cpp index 6ca99fbb2..b4f7b78a6 100644 --- a/src/modules/m_gateway.cpp +++ b/src/modules/m_gateway.cpp @@ -252,7 +252,7 @@ public: CmdResult HandleLocal(LocalUser* user, const Params& parameters) override { - if (user->registered == REG_ALL || realhost.Get(user)) + if (user->IsFullyConnected() || realhost.Get(user)) return CmdResult::FAILURE; for (const auto& host : hosts) diff --git a/src/modules/m_httpd_stats.cpp b/src/modules/m_httpd_stats.cpp index f05c418cb..bcad9bf31 100644 --- a/src/modules/m_httpd_stats.cpp +++ b/src/modules/m_httpd_stats.cpp @@ -294,7 +294,7 @@ namespace Stats serializer.BeginBlock("userlist"); for (const auto& [_, u] : ServerInstance->Users.GetUsers()) { - if (u->registered != REG_ALL) + if (!u->IsFullyConnected()) continue; DumpUser(serializer, u); @@ -413,7 +413,7 @@ namespace Stats NewUserList user_list; for (const auto& [_, u] : ServerInstance->Users.GetUsers()) { - if (!showunreg && u->registered != REG_ALL) + if (!showunreg && !u->IsFullyConnected()) continue; LocalUser* lu = IS_LOCAL(u); diff --git a/src/modules/m_ident.cpp b/src/modules/m_ident.cpp index 7769c84d5..9adfaf3bd 100644 --- a/src/modules/m_ident.cpp +++ b/src/modules/m_ident.cpp @@ -327,7 +327,7 @@ public: return; // We don't want to look this up once the user has connected. - if (user->registered == REG_ALL || user->quitting) + if (user->IsFullyConnected() || user->quitting) return; std::shared_ptr<ConfigTag> tag = user->GetClass()->config; diff --git a/src/modules/m_ircv3_ctctags.cpp b/src/modules/m_ircv3_ctctags.cpp index c21b9e762..5d9e74e8a 100644 --- a/src/modules/m_ircv3_ctctags.cpp +++ b/src/modules/m_ircv3_ctctags.cpp @@ -134,7 +134,7 @@ private: for (auto* luser : ServerInstance->Users.GetLocalUsers()) { // Don't send to unregistered users or the user who is the source. - if (luser->registered != REG_ALL || luser == source) + if (!luser->IsFullyConnected() || luser == source) continue; // Don't send to exempt users. diff --git a/src/modules/m_ircv3_labeledresponse.cpp b/src/modules/m_ircv3_labeledresponse.cpp index c90154371..468fb0740 100644 --- a/src/modules/m_ircv3_labeledresponse.cpp +++ b/src/modules/m_ircv3_labeledresponse.cpp @@ -107,7 +107,7 @@ public: return MOD_RES_PASSTHRU; // We only care about registered users with the labeled-response and batch caps. - if (user->registered != REG_ALL || !cap.IsEnabled(user) || !batchcap.IsEnabled(user)) + if (!user->IsFullyConnected() || !cap.IsEnabled(user) || !batchcap.IsEnabled(user)) return MOD_RES_PASSTHRU; const ClientProtocol::TagMap& tagmap = parameters.GetTags(); diff --git a/src/modules/m_shun.cpp b/src/modules/m_shun.cpp index 8837eef95..3b0d7baf4 100644 --- a/src/modules/m_shun.cpp +++ b/src/modules/m_shun.cpp @@ -155,7 +155,7 @@ private: bool IsShunned(LocalUser* user) const { // Exempt the user if they are not fully connected and allowconnect is enabled. - if (allowconnect && user->registered != REG_ALL) + if (allowconnect && !user->IsFullyConnected()) return false; // Exempt the user from shuns if they are an oper with the servers/ignore-shun privilege. diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp index 241c498f5..efcac01c7 100644 --- a/src/modules/m_spanningtree/main.cpp +++ b/src/modules/m_spanningtree/main.cpp @@ -550,7 +550,7 @@ void ModuleSpanningTree::OnUserJoin(Membership* memb, bool sync, bool created_by void ModuleSpanningTree::OnChangeHost(User* user, const std::string& newhost) { - if (user->registered != REG_ALL || !IS_LOCAL(user)) + if (!user->IsFullyConnected() || !IS_LOCAL(user)) return; CmdBuilder(user, "FHOST").push(newhost).Broadcast(); @@ -558,7 +558,7 @@ void ModuleSpanningTree::OnChangeHost(User* user, const std::string& newhost) void ModuleSpanningTree::OnChangeRealHost(User* user, const std::string& newhost) { - if (user->registered != REG_ALL || !IS_LOCAL(user)) + if (!user->IsFullyConnected() || !IS_LOCAL(user)) return; CmdBuilder(user, "FRHOST").push(newhost).Broadcast(); @@ -566,7 +566,7 @@ void ModuleSpanningTree::OnChangeRealHost(User* user, const std::string& newhost void ModuleSpanningTree::OnChangeRealName(User* user, const std::string& real) { - if (user->registered != REG_ALL || !IS_LOCAL(user)) + if (!user->IsFullyConnected() || !IS_LOCAL(user)) return; CmdBuilder(user, "FNAME").push_last(real).Broadcast(); @@ -574,7 +574,7 @@ void ModuleSpanningTree::OnChangeRealName(User* user, const std::string& real) void ModuleSpanningTree::OnChangeIdent(User* user, const std::string& ident) { - if ((user->registered != REG_ALL) || (!IS_LOCAL(user))) + if (!user->IsFullyConnected() || !IS_LOCAL(user)) return; CmdBuilder(user, "FIDENT").push(ident).Broadcast(); @@ -774,7 +774,7 @@ restart: void ModuleSpanningTree::OnOper(User* user) { - if (user->registered != REG_ALL || !IS_LOCAL(user)) + if (!user->IsFullyConnected() || !IS_LOCAL(user)) return; // Note: The protocol does not allow direct umode +o; @@ -825,7 +825,7 @@ void ModuleSpanningTree::OnMode(User* source, User* u, Channel* c, const Modes:: if (u) { - if (u->registered != REG_ALL) + if (!u->IsFullyConnected()) return; CmdBuilder params(source, "MODE"); diff --git a/src/modules/m_spanningtree/netburst.cpp b/src/modules/m_spanningtree/netburst.cpp index 7c49c58a6..5dcc88504 100644 --- a/src/modules/m_spanningtree/netburst.cpp +++ b/src/modules/m_spanningtree/netburst.cpp @@ -276,7 +276,7 @@ void TreeSocket::SendUsers(BurstState& bs) { for (const auto& [_, user] : ServerInstance->Users.GetUsers()) { - if (user->registered != REG_ALL) + if (!user->IsFullyConnected()) continue; this->WriteLine(CommandUID::Builder(user)); diff --git a/src/modules/m_spanningtree/uid.cpp b/src/modules/m_spanningtree/uid.cpp index 84dae98ef..ccedf8c3c 100644 --- a/src/modules/m_spanningtree/uid.cpp +++ b/src/modules/m_spanningtree/uid.cpp @@ -49,7 +49,7 @@ CmdResult CommandUID::HandleServer(TreeServer* remoteserver, CommandBase::Params // See if there is a nick collision auto collideswith = ServerInstance->Users.FindNick(params[2]); - if ((collideswith) && (collideswith->registered != REG_ALL)) + if (collideswith && !collideswith->IsFullyConnected()) { // User that the incoming user is colliding with is not fully registered, we force nick change the // unregistered user to their uuid and tell them what happened diff --git a/src/modules/m_starttls.cpp b/src/modules/m_starttls.cpp index 53819ce72..c95b7b4f5 100644 --- a/src/modules/m_starttls.cpp +++ b/src/modules/m_starttls.cpp @@ -53,7 +53,7 @@ public: return CmdResult::FAILURE; } - if (user->registered == REG_ALL) + if (user->IsFullyConnected()) { user->WriteNumeric(ERR_STARTTLS, "STARTTLS is not permitted after client registration is complete"); return CmdResult::FAILURE; |
