#include "s_conf.h"
#include "s_serv.h"
#include "send.h"
-#include "irc_string.h"
-#include "sprintf_irc.h"
+#include "match.h"
#include "s_conf.h"
-#include "s_log.h"
+#include "logger.h"
#include "msg.h"
#include "parse.h"
#include "modules.h"
/*
* m_whois
- * parv[0] = sender prefix
* parv[1] = nickname masklist
*/
static int
/*
* ms_whois
- * parv[0] = sender prefix
* parv[1] = server to reply
* parv[2] = nickname to whois
*/
nick++;
}
- target_p = find_named_person(nick);
+ if(MyClient(source_p))
+ target_p = find_named_person(nick);
+ else
+ target_p = find_person(nick);
if(target_p != NULL)
{
{
char buffer[BUFSIZE];
- snprintf(buffer, sizeof(buffer), "%s!%s@%s %s",
+ rb_snprintf(buffer, sizeof(buffer), "%s!%s@%s %s",
target_p->name, target_p->username,
target_p->host, target_p->servptr->name);
report_operspy(source_p, "WHOIS", buffer);
char *t;
int tlen;
hook_data_client hdata;
- char *name;
- char quest[] = "?";
int visible;
int extra_space = 0;
- if(target_p->name[0] == '\0')
- name = quest;
- else
- name = target_p->name;
-
if(target_p->user == NULL)
{
s_assert(0);
GlobalSetOptions.operstring));
}
+ if(IsSSLClient(target_p))
+ sendto_one_numeric(source_p, RPL_WHOISSECURE, form_str(RPL_WHOISSECURE),
+ target_p->name);
+
if(MyClient(target_p))
{
if (IsDynSpoof(target_p) && (IsOper(source_p) || source_p == target_p))
target_p->name, target_p->sockhost);
}
-
}
hdata.client = source_p;