summary refs log tree commit diff stats
path: root/src/common/proto-irc.c
diff options
context:
space:
mode:
authorTingPing <tingping@tingping.se>2013-04-03 18:51:54 -0400
committerTingPing <tingping@tingping.se>2013-04-03 18:51:54 -0400
commit496ed18e85147a167a2841e078e974e988eeb006 (patch)
tree9c71c5cd5075393b2e832d0ab85e9fe4d97363ae /src/common/proto-irc.c
parent86cf7de430ce9d1d255ec82476aca5ffd5146dd9 (diff)
Add MONITOR support
Diffstat (limited to 'src/common/proto-irc.c')
-rw-r--r--src/common/proto-irc.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/common/proto-irc.c b/src/common/proto-irc.c
index db770511..4fd8deb7 100644
--- a/src/common/proto-irc.c
+++ b/src/common/proto-irc.c
@@ -466,6 +466,8 @@ process_numeric (session * sess, int n,
 	if (prefs.hex_irc_whois_front)
 		whois_sess = serv->front_session;
 
+	char *ex;
+	
 	switch (n)
 	{
 	case 1:
@@ -898,6 +900,20 @@ process_numeric (session * sess, int n,
 			goto def;
 		break;
 
+	case 730: /* RPL_MONONLINE */
+		ex = strchr (word[4], '!'); /* only send the nick */
+		if (ex)
+			ex[0] = 0;
+		notify_set_online (serv, word[4] + 1);
+		break;
+
+	case 731: /* RPL_MONOFFLINE */
+		ex = strchr (word[4], '!'); /* only send the nick */
+		if (ex)
+			ex[0] = 0;
+		notify_set_offline (serv, word[4] + 1, FALSE);
+		break;
+
 	case 903:	/* successful SASL auth */
 	case 904:	/* aborted SASL auth */
 	case 905:	/* failed SASL auth */