ModResult OnWhoisLine(Whois::Context& whois, Numeric::Numeric& numeric) override { /* Dont display numeric 313 (RPL_WHOISOPER) if they have +H set and the * person doing the WHOIS is not an oper */ if (numeric.GetNumeric() != 313) return MOD_RES_PASSTHRU; if (!whois.GetTarget()->IsModeSet(hm)) return MOD_RES_PASSTHRU; if (!whois.GetSource()->HasPrivPermission("users/auspex")) return MOD_RES_DENY; return MOD_RES_PASSTHRU; }
void OnWhois(Whois::Context& whois) override { User* const source = whois.GetSource(); User* const dest = whois.GetTarget(); if (!dest->IsModeSet(sw) || whois.IsSelfWhois()) return; if (!ShowWhoisFromOpers && source->IsOper()) return; if (IS_LOCAL(dest)) { cmd.HandleFast(dest, source); } else { CommandBase::Params params; params.push_back(dest->uuid); params.push_back(source->uuid); ServerInstance->PI->SendEncapsulatedData(dest->server->GetName(), cmd.name, params); } }