summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2016-06-05 14:19:08 +0100
committerRussell King <rmk+kernel@armlinux.org.uk>2016-06-05 17:47:56 +0100
commitd939999b8cf4318d1f814011f187fb1307a3da0d (patch)
treea5853ac77c7e0d8a18e8091b8014d2396fb29f52
parent8d5135c419951a37dddfaf7d653fe28803e37ce0 (diff)
Update operspy module
-rw-r--r--contrib/m_operspy.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/contrib/m_operspy.c b/contrib/m_operspy.c
index f893bb7..5d37df2 100644
--- a/contrib/m_operspy.c
+++ b/contrib/m_operspy.c
@@ -470,15 +470,42 @@ operspy_whois(struct Client *client_p, int parc, char *parv[])
client_p->name, target_p->name, a2client_p->name,
a2client_p->info);
+ if (HasUMode(target_p, UMODE_REGISTERED))
+ sendto_one(client_p, form_str(RPL_WHOISREGNICK),
+ me.name, client_p->name, target_p->name);
+
+ if (target_p->away[0])
+ sendto_one(client_p, form_str(RPL_AWAY),
+ me.name, client_p->name, target_p->name,
+ target_p->away);
+
+ if (HasUMode(target_p, UMODE_CALLERID) && !HasUMode(target_p, UMODE_SOFTCALLERID))
+ sendto_one(client_p, form_str(RPL_TARGUMODEG),
+ me.name, client_p->name, target_p->name);
+
if (HasUMode(target_p, UMODE_OPER))
sendto_one(client_p, form_str(HasUMode(target_p, UMODE_ADMIN) ? RPL_WHOISADMIN :
RPL_WHOISOPERATOR), me.name, client_p->name, target_p->name);
+ if (strcmp(target_p->sockhost, "0"))
+ {
+ sendto_one(client_p, form_str(RPL_WHOISACTUALLY),
+ me.name, client_p->name, target_p->name,
+ target_p->sockhost);
+ }
+
if (MyConnect(target_p))
+ {
+#ifdef HAVE_LIBCRYPTO
+ if (target_p->localClient->fd.ssl)
+ sendto_one(client_p, form_str(RPL_WHOISSECURE),
+ me.name, client_p->name, target_p->name);
+#endif
sendto_one(client_p, form_str(RPL_WHOISIDLE), me.name,
client_p->name, target_p->name,
- CurrentTime - target_p->localClient->last_privmsg,
+ idle_time_get(client_p, target_p),
target_p->localClient->firsttime);
+ }
sendto_one(client_p, form_str(RPL_ENDOFWHOIS),
me.name, client_p->name, parv[2]);
}