about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-02-16 18:31:50 -0500
committerJune McEnroe <june@causal.agency>2020-02-16 18:31:50 -0500
commitedd88554184ad10a6d3815a07d8d62eac218a2b3 (patch)
tree080a93ae1a11fd16b592072116dba6964041f1d0
parentAdd RFC 1459 and modern.ircdocs.horse references (diff)
downloadcatgirl-edd88554184ad10a6d3815a07d8d62eac218a2b3.tar.gz
catgirl-edd88554184ad10a6d3815a07d8d62eac218a2b3.zip
Track EXCEPTS and INVEX modes
-rw-r--r--chat.h2
-rw-r--r--handle.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/chat.h b/chat.h
index b14a65a..adde642 100644
--- a/chat.h
+++ b/chat.h
@@ -93,6 +93,8 @@ extern struct Network {
 	char *paramModes;
 	char *setParamModes;
 	char *channelModes;
+	char excepts;
+	char invex;
 } network;
 
 extern struct Self {
diff --git a/handle.c b/handle.c
index d4f615e..6de7fd0 100644
--- a/handle.c
+++ b/handle.c
@@ -228,6 +228,10 @@ static void handleReplyISupport(struct Message *msg) {
 			set(&network.paramModes, strsep(&msg->params[i], ","));
 			set(&network.setParamModes, strsep(&msg->params[i], ","));
 			set(&network.channelModes, strsep(&msg->params[i], ","));
+		} else if (!strcmp(key, "EXCEPTS")) {
+			network.excepts = (msg->params[i] ? msg->params[i][0] : 'e');
+		} else if (!strcmp(key, "INVEX")) {
+			network.invex = (msg->params[i] ? msg->params[i][0] : 'I');
 		}
 	}
 }