X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fcommands%2Fcmd_who.cpp;h=6f8b91e75fff8d42af961e95216d1b0b1dcd5f0a;hb=3c93d5d1c46953ad152f619885c4f3678d4a3ecc;hp=403ec5f64668cc7ef09bb8ee2c9ee2fa507a0c98;hpb=0a3159121e15decec9bcb82c836158a817bba894;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/commands/cmd_who.cpp b/src/commands/cmd_who.cpp index 403ec5f64..6f8b91e75 100644 --- a/src/commands/cmd_who.cpp +++ b/src/commands/cmd_who.cpp @@ -136,7 +136,7 @@ bool CommandWho::CanView(Channel* chan, User* user) if (chan->HasUser(user)) return true; /* Opers see all */ - if (IS_OPER(user)) + if (user->HasPrivPermission("users/auspex")) return true; /* Cant see inside a +s or a +p channel unless we are a member (see above) */ else if (!chan->IsModeSet('s') && !chan->IsModeSet('p')) @@ -155,7 +155,7 @@ void CommandWho::SendWhoLine(User* user, const std::string &initial, Channel* ch Channel* chlast = ServerInstance->FindChan(lcn); std::string wholine = initial + (ch ? ch->name : lcn) + " " + u->ident + " " + (opt_showrealhost ? u->host : u->dhost) + " " + - ((*ServerInstance->Config->HideWhoisServer && !IS_OPER(user)) ? ServerInstance->Config->HideWhoisServer : u->server) + + ((*ServerInstance->Config->HideWhoisServer && !user->HasPrivPermission("servers/auspex")) ? ServerInstance->Config->HideWhoisServer : u->server) + " " + u->nick + " "; /* away? */ @@ -239,11 +239,11 @@ CmdResult CommandWho::Handle (const std::vector& parameters, User * opt_viewopersonly = true; break; case 'h': - if (IS_OPER(user)) + if (user->HasPrivPermission("users/auspex")) opt_showrealhost = true; break; case 'u': - if (IS_OPER(user)) + if (user->HasPrivPermission("users/auspex")) opt_unlimit = true; break; case 'r': @@ -300,7 +300,7 @@ CmdResult CommandWho::Handle (const std::vector& parameters, User * continue; /* If we're not inside the channel, hide +i users */ - if (i->first->IsModeSet('i') && !inside && !IS_OPER(user)) + if (i->first->IsModeSet('i') && !inside && !user->HasPrivPermission("users/auspex")) continue; } @@ -322,7 +322,7 @@ CmdResult CommandWho::Handle (const std::vector& parameters, User * { if (!user->SharesChannelWith(oper)) { - if (usingwildcards && (!oper->IsModeSet('i')) && (!IS_OPER(user))) + if (usingwildcards && (!oper->IsModeSet('i')) && (!user->HasPrivPermission("users/auspex"))) continue; } @@ -338,7 +338,7 @@ CmdResult CommandWho::Handle (const std::vector& parameters, User * { if (!user->SharesChannelWith(i->second)) { - if (usingwildcards && (i->second->IsModeSet('i')) && (!IS_OPER(user))) + if (usingwildcards && (i->second->IsModeSet('i')) && (!user->HasPrivPermission("users/auspex"))) continue; }