diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/m_helpop.cpp | 4 | ||||
-rw-r--r-- | src/stats.cpp | 6 | ||||
-rw-r--r-- | src/users.cpp | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/modules/m_helpop.cpp b/src/modules/m_helpop.cpp index 4c5dc23a9..502fa33fd 100644 --- a/src/modules/m_helpop.cpp +++ b/src/modules/m_helpop.cpp @@ -53,7 +53,7 @@ class Helpop : public ModeHandler class CommandHelpop : public Command { public: - CommandHelpop(Module* Creator) : Command(Creator, "HELP", 0) + CommandHelpop(Module* Creator) : Command(Creator, "HELPOP", 0) { syntax = "<any-text>"; } @@ -176,7 +176,7 @@ class ModuleHelpop : public Module Version GetVersion() { - return Version("/help command, works like Unreal helpop", VF_VENDOR); + return Version("Provides the /HELPOP command, works like UnrealIRCd's helpop", VF_VENDOR); } }; diff --git a/src/stats.cpp b/src/stats.cpp index 5a117b5d3..cd132afed 100644 --- a/src/stats.cpp +++ b/src/stats.cpp @@ -19,7 +19,11 @@ void InspIRCd::DoStats(char statschar, User* user, string_list &results) { std::string sn(this->Config->ServerName); - if (!user->HasPrivPermission("servers/auspex") && Config->UserStats.find(statschar) == std::string::npos) + bool isPublic = Config->UserStats.find(statschar) != std::string::npos; + bool isRemoteOper = IS_REMOTE(user) && IS_OPER(user); + bool isLocalOperWithPrivs = IS_LOCAL(user) && user->HasPrivPermission("servers/auspex"); + + if (!isPublic && !isRemoteOper && !isLocalOperWithPrivs) { this->SNO->WriteToSnoMask('t', "%s '%c' denied for %s (%s@%s)", diff --git a/src/users.cpp b/src/users.cpp index f8f9d0025..8b3065706 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -1541,7 +1541,7 @@ void User::SplitChanList(User* dest, const std::string &cl) } } - if (line.length()) + if (line.length() != prefix.str().length()) { ServerInstance->SendWhoisLine(this, dest, 319, "%s", line.c_str()); } |