summaryrefslogtreecommitdiff
path: root/src/fe-common
diff options
context:
space:
mode:
Diffstat (limited to 'src/fe-common')
-rw-r--r--src/fe-common/irc/fe-events-numeric.c14
-rw-r--r--src/fe-common/irc/module-formats.c1
-rw-r--r--src/fe-common/irc/module-formats.h1
3 files changed, 16 insertions, 0 deletions
diff --git a/src/fe-common/irc/fe-events-numeric.c b/src/fe-common/irc/fe-events-numeric.c
index 42dec0aa..7a82ea09 100644
--- a/src/fe-common/irc/fe-events-numeric.c
+++ b/src/fe-common/irc/fe-events-numeric.c
@@ -638,6 +638,18 @@ static void event_chanserv_url(IRC_SERVER_REC *server, const char *data)
g_free(params);
}
+static void event_whois_auth(IRC_SERVER_REC *server, const char *data)
+{
+ char *params, *nick, *text;
+
+ g_return_if_fail(data != NULL);
+
+ params = event_get_params(data, 3, NULL, &nick, &text);
+ printformat(server, nick, MSGLEVEL_CRAP,
+ IRCTXT_WHOIS_EXTRA, nick, text);
+ g_free(params);
+}
+
static void event_end_of_whowas(IRC_SERVER_REC *server, const char *data)
{
char *params, *nick;
@@ -899,6 +911,7 @@ void fe_events_numeric_init(void)
signal_add("event 317", (SIGNAL_FUNC) event_whois_idle);
signal_add("event 318", (SIGNAL_FUNC) event_end_of_whois);
signal_add("event 328", (SIGNAL_FUNC) event_chanserv_url);
+ signal_add("event 330", (SIGNAL_FUNC) event_whois_auth);
signal_add("event 369", (SIGNAL_FUNC) event_end_of_whowas);
signal_add("event 319", (SIGNAL_FUNC) event_whois_channels);
signal_add("event 302", (SIGNAL_FUNC) event_userhost);
@@ -982,6 +995,7 @@ void fe_events_numeric_deinit(void)
signal_remove("event 317", (SIGNAL_FUNC) event_whois_idle);
signal_remove("event 318", (SIGNAL_FUNC) event_end_of_whois);
signal_remove("event 328", (SIGNAL_FUNC) event_chanserv_url);
+ signal_remove("event 330", (SIGNAL_FUNC) event_whois_auth);
signal_remove("event 369", (SIGNAL_FUNC) event_end_of_whowas);
signal_remove("event 319", (SIGNAL_FUNC) event_whois_channels);
signal_remove("event 302", (SIGNAL_FUNC) event_userhost);
diff --git a/src/fe-common/irc/module-formats.c b/src/fe-common/irc/module-formats.c
index 65ff47aa..4309a06c 100644
--- a/src/fe-common/irc/module-formats.c
+++ b/src/fe-common/irc/module-formats.c
@@ -107,6 +107,7 @@ FORMAT_REC fecommon_irc_formats[] = {
{ "whois_channels", "{whois channels %|$1}", 2, { 0, 0 } },
{ "whois_away", "{whois away %|$1}", 2, { 0, 0 } },
{ "whois_special", "{whois %|{hilight $1}}", 2, { 0, 0 } },
+ { "whois_extra", "{whois %|{hilight $1}}", 2, { 0, 0 } },
{ "end_of_whois", "End of WHOIS", 1, { 0 } },
{ "end_of_whowas", "End of WHOWAS", 1, { 0 } },
{ "whois_not_found", "There is no such nick $0", 1, { 0 } },
diff --git a/src/fe-common/irc/module-formats.h b/src/fe-common/irc/module-formats.h
index 5166f31c..91e3b448 100644
--- a/src/fe-common/irc/module-formats.h
+++ b/src/fe-common/irc/module-formats.h
@@ -82,6 +82,7 @@ enum {
IRCTXT_WHOIS_CHANNELS,
IRCTXT_WHOIS_AWAY,
IRCTXT_WHOIS_SPECIAL,
+ IRCTXT_WHOIS_EXTRA,
IRCTXT_END_OF_WHOIS,
IRCTXT_END_OF_WHOWAS,
IRCTXT_WHOIS_NOT_FOUND,