diff options
-rw-r--r-- | src/commands/cmd_who.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/commands/cmd_who.cpp b/src/commands/cmd_who.cpp index 1b77dd004..b201b9815 100644 --- a/src/commands/cmd_who.cpp +++ b/src/commands/cmd_who.cpp @@ -250,7 +250,8 @@ CmdResult CommandWho::Handle (const std::vector<std::string>& parameters, User * opt_realname = true; break; case 'm': - opt_mode = true; + if (user->HasPrivPermission("users/auspex")) + opt_mode = true; break; case 'M': if (user->HasPrivPermission("users/auspex")) @@ -260,16 +261,19 @@ CmdResult CommandWho::Handle (const std::vector<std::string>& parameters, User * opt_ident = true; break; case 'p': - opt_port = true; + if (user->HasPrivPermission("users/auspex")) + opt_port = true; break; case 'a': opt_away = true; break; case 'l': - opt_local = true; + if (user->HasPrivPermission("users/auspex") || !*ServerInstance->Config->HideWhoisServer) + opt_local = true; break; case 'f': - opt_far = true; + if (user->HasPrivPermission("users/auspex") || !*ServerInstance->Config->HideWhoisServer) + opt_far = true; break; case 't': opt_time = true; |