aboutsummaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorGravatar Sadie Powell2022-10-29 13:30:39 +0100
committerGravatar Sadie Powell2022-10-29 13:43:11 +0100
commit5a508c19ff3dec65bb4148883d38127d7c0be79e (patch)
tree2bdfcbadfdfbe0a6fd244260a9570be86a3eb8d4 /src/modules
parentAllow 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.cpp2
-rw-r--r--src/modules/m_blockamsg.cpp2
-rw-r--r--src/modules/m_cap.cpp2
-rw-r--r--src/modules/m_chghost.cpp2
-rw-r--r--src/modules/m_cloaking.cpp4
-rw-r--r--src/modules/m_disable.cpp4
-rw-r--r--src/modules/m_gateway.cpp2
-rw-r--r--src/modules/m_httpd_stats.cpp4
-rw-r--r--src/modules/m_ident.cpp2
-rw-r--r--src/modules/m_ircv3_ctctags.cpp2
-rw-r--r--src/modules/m_ircv3_labeledresponse.cpp2
-rw-r--r--src/modules/m_shun.cpp2
-rw-r--r--src/modules/m_spanningtree/main.cpp12
-rw-r--r--src/modules/m_spanningtree/netburst.cpp2
-rw-r--r--src/modules/m_spanningtree/uid.cpp2
-rw-r--r--src/modules/m_starttls.cpp2
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;