Events::ModuleEventProvider evprov;
Events::ModuleEventProvider lineevprov;
- void DoWhois(LocalUser* user, User* dest, unsigned long signon, unsigned long idle);
+ void DoWhois(LocalUser* user, User* dest, time_t signon, unsigned long idle);
void SendChanList(WhoisContextImpl& whois);
public:
* @param user The user issuing the command
* @return A value from CmdResult to indicate command success or failure.
*/
- CmdResult HandleLocal(const std::vector<std::string>& parameters, LocalUser* user);
- CmdResult HandleRemote(const std::vector<std::string>& parameters, RemoteUser* target);
+ CmdResult HandleLocal(const std::vector<std::string>& parameters, LocalUser* user) CXX11_OVERRIDE;
+ CmdResult HandleRemote(const std::vector<std::string>& parameters, RemoteUser* target) CXX11_OVERRIDE;
};
class WhoisNumericSink
chanlist.Flush(whois);
}
-void CommandWhois::DoWhois(LocalUser* user, User* dest, unsigned long signon, unsigned long idle)
+void CommandWhois::DoWhois(LocalUser* user, User* dest, time_t signon, unsigned long idle)
{
WhoisContextImpl whois(user, dest, lineevprov);
- whois.SendLine(311, dest->ident, dest->dhost, '*', dest->fullname);
+ whois.SendLine(311, dest->ident, dest->GetDisplayedHost(), '*', dest->fullname);
if (whois.IsSelfWhois() || user->HasPrivPermission("users/auspex"))
{
- whois.SendLine(378, InspIRCd::Format("is connecting from %s@%s %s", dest->ident.c_str(), dest->host.c_str(), dest->GetIPString().c_str()));
+ whois.SendLine(378, InspIRCd::Format("is connecting from %s@%s %s", dest->ident.c_str(), dest->GetRealHost().c_str(), dest->GetIPString().c_str()));
}
SendChanList(whois);
if (!localuser)
return CMD_FAILURE;
- unsigned long idle = ConvToInt(parameters.back());
+ unsigned long idle = ConvToNum<unsigned long>(parameters.back());
DoWhois(localuser, target, target->signon, idle);
return CMD_SUCCESS;
CmdResult CommandWhois::HandleLocal(const std::vector<std::string>& parameters, LocalUser* user)
{
User *dest;
- int userindex = 0;
- unsigned long idle = 0, signon = 0;
+ unsigned int userindex = 0;
+ unsigned long idle = 0;
+ time_t signon = 0;
if (CommandParser::LoopCall(user, this, parameters, 0))
return CMD_SUCCESS;