You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

57 lines
1.7 KiB

Index: include/whois.h
--- include/whois.h.orig 2004-01-06 09:14:08 +0100
+++ include/whois.h 2006-07-22 16:46:49 +0200
@@ -42,6 +42,7 @@
void whois_name(u_char *, u_char **);
void whowas_name(u_char *, u_char **);
void whois_channels(u_char *, u_char **);
+ void whois_loggedinas(u_char *, u_char **);
void whois_server(u_char *, u_char **);
void whois_oper(u_char *, u_char **);
void whois_lastcom(u_char *, u_char **);
Index: source/numbers.c
--- source/numbers.c.orig 2004-01-08 00:30:00 +0100
+++ source/numbers.c 2006-07-22 16:46:49 +0200
@@ -506,6 +506,10 @@
funny_mode(from, ArgList);
break;
+ case 330: /* #define RPL_WHOISLOGGEDIN 330 */
+ whois_loggedinas(from, ArgList);
+ break;
+
case 341: /* #define RPL_INVITING 341 */
invite(from, ArgList);
break;
Index: source/whois.c
--- source/whois.c.orig 2006-07-22 05:50:10 +0200
+++ source/whois.c 2006-07-22 16:46:49 +0200
@@ -541,6 +541,28 @@
}
/*
+ * whois_server: Called in numbers.c when a numeric of 330 is received.
+ * Ratbox IRC sends ":%s 330 %s %s %s :is logged in as" with args
+ * me.name, data->client->name, data->target->name, data->target->user->suser
+ */
+void
+whois_loggedinas(from, ArgList)
+ u_char *from;
+ u_char **ArgList;
+{
+ if (!ignore_whois_crap) {
+ u_char *nick, *user;
+ PasteArgs(ArgList, 2);
+ if ((nick = ArgList[0]) && (user = ArgList[1]) &&
+ do_hook(current_numeric, "%s %s %s %s", from,
+ nick, user, ArgList[2])) {
+ put_it("%s %s is logged in as %s", numeric_banner(),
+ nick, user);
+ }
+ }
+}
+
+/*
* whois_oper: This displays the operator status of a user, as returned by
* numeric 313 from the server. If the ignore_whois_crap flag is set,
* nothing is dispayed.