summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-04-05 11:09:45 -0400
committerJune McEnroe <june@causal.agency>2020-04-05 11:13:48 -0400
commit5fce836036bc60d250b73b8883f02184435fb2c8 (patch)
tree58d7ce04e92926473bcec00bb21a007975afaddf
parentCheck unscoop regexps with make test (diff)
downloadlitterbox-5fce836036bc60d250b73b8883f02184435fb2c8.tar.gz
litterbox-5fce836036bc60d250b73b8883f02184435fb2c8.zip
Add unscoop matchers for ban/unban events
The IRC and Textual matchers miss bans mixed with other mode changes,
but those are rare.
-rw-r--r--unscoop.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/unscoop.c b/unscoop.c
index eabb594..2e4d2d8 100644
--- a/unscoop.c
+++ b/unscoop.c
@@ -70,7 +70,13 @@ static const struct Matcher Catgirl[] = {
 	}, {
 		P1_TIME "([^ ]+) removes the sign in",
 		Topic, { ":time", ":nick" },
-	},
+	}, {
+		P1_TIME "([^ ]+) bans [+]b ([^ ]+)",
+		Ban, { ":time", ":nick", ":target" },
+	}, {
+		P1_TIME "([^ ]+) unbans [-]b ([^ ]+)",
+		Unban, { ":time", ":nick", ":target" },
+	}
 };
 
 static const struct Matcher Generic[] = {
@@ -119,6 +125,12 @@ static const struct Matcher IRC[] = {
 	}, {
 		P2_TAGS P3_ORIGIN "TOPIC [^ ]+( :?(.+))?",
 		Topic, { NULL, ":time", ":nick", ":user", ":host", NULL, ":message" },
+	}, {
+		P2_TAGS P3_ORIGIN "MODE [^ ]+ [+]b+ :?(.+)",
+		Ban, { NULL, ":time", ":nick", ":user", ":host", ":target" },
+	}, {
+		P2_TAGS P3_ORIGIN "MODE [^ ]+ [-]b+ :?(.+)",
+		Unban, { NULL, ":time", ":nick", ":user", ":host", ":target" },
 	},
 };
 #undef P2_TAGS
@@ -154,7 +166,13 @@ static const struct Matcher Textual[] = {
 	}, {
 		P1_TIME "([^ ]+) changed the topic to (.+)",
 		Topic, { ":time", ":nick", ":message" },
-	},
+	}, {
+		P1_TIME "([^ ]+) sets mode [+]b+ (.+)",
+		Ban, { ":time", ":nick", ":target" },
+	}, {
+		P1_TIME "([^ ]+) sets mode [-]b+ (.+)",
+		Unban, { ":time", ":nick", ":target" },
+	}
 };
 #undef P2_USERHOST
 #undef P2_MESSAGE
6a480b3c71b017a191597e5cb44&follow=1'>filters: migrate from luacrypto to luaosslJason A. Donenfeld 2019-01-02ui-shared: fix broken sizeof in title setting and rewriteJason A. Donenfeld 2018-12-09git: update to v2.20.0Christian Hesse 2018-11-25ui-blame: set repo for sbJason A. Donenfeld 2018-11-25auth-filter: pass url with query string attachedJason A. Donenfeld 2018-11-21git: use xz compressed archive for downloadChristian Hesse 2018-10-12git: update to v2.19.1Christian Hesse 2018-09-11ui-ssdiff: ban strcat()Christian Hesse 2018-09-11ui-ssdiff: ban strncpy()Christian Hesse 2018-09-11ui-shared: ban strcat()Christian Hesse 2018-09-11ui-patch: ban sprintf()Christian Hesse 2018-09-11ui-log: ban strncpy()Christian Hesse 2018-09-11ui-log: ban strcpy()Christian Hesse 2018-09-11parsing: ban sprintf()Christian Hesse 2018-09-11parsing: ban strncpy()Christian Hesse 2018-08-28filters: generate anchor links from markdownChristian Hesse 2018-08-03Bump version.Jason A. Donenfeld 2018-08-03clone: fix directory traversalJason A. Donenfeld 2018-08-03config: record repo.snapshot-prefix in the per-repo configKonstantin Ryabitsev