diff options
author | C. McEnroe | 2020-07-06 22:40:30 -0400 |
---|---|---|
committer | C. McEnroe | 2020-07-06 22:41:22 -0400 |
commit | cb84983dd1b93d3d382600e95543a73bdc7b4428 (patch) | |
tree | 3ba4a5c499f08880bcbae9c08d58688be8606dfb | |
parent | 529028fe4a2973aaae466c294b43d8d59f380f9d (diff) |
Add message to ignore patterns
-rw-r--r-- | catgirl.1 | 3 | ||||
-rw-r--r-- | ignore.c | 11 |
2 files changed, 9 insertions, 5 deletions
diff --git a/catgirl.1 b/catgirl.1 index 1c9abda..478b086 100644 --- a/catgirl.1 +++ b/catgirl.1 @@ -1,4 +1,4 @@ -.Dd June 12, 2020 +.Dd July 6, 2020 .Dt CATGIRL 1 .Os . @@ -162,6 +162,7 @@ The format of the pattern is as follows: .Ar nick Ns Op Ar !user@host .Op Ar command .Op Ar channel +.Op Ar message .Ed . .It Fl j Ar join , Cm join = Ar join diff --git a/ignore.c b/ignore.c index 29a681e..f91b089 100644 --- a/ignore.c +++ b/ignore.c @@ -46,10 +46,12 @@ const char *ignoreAdd(const char *pattern) { } char **dest = &ignore.patterns[ignore.len++]; if (!ex && !sp) { - asprintf(dest, "%s!*@* * *", pattern); + asprintf(dest, "%s!*@* * * *", pattern); } else if (sp < 1) { - asprintf(dest, "%s * *", pattern); + asprintf(dest, "%s * * *", pattern); } else if (sp < 2) { + asprintf(dest, "%s * *", pattern); + } else if (sp < 3) { asprintf(dest, "%s *", pattern); } else { *dest = strdup(pattern); @@ -72,8 +74,9 @@ bool ignoreRemove(const char *pattern) { enum Heat ignoreCheck(enum Heat heat, uint id, const struct Message *msg) { char match[512]; snprintf( - match, sizeof(match), "%s!%s@%s %s %s", - msg->nick, msg->user, msg->host, msg->cmd, idNames[id] + match, sizeof(match), "%s!%s@%s %s %s %s", + msg->nick, msg->user, msg->host, + msg->cmd, idNames[id], (msg->params[1] ?: "") ); for (size_t i = 0; i < ignore.len; ++i) { if (fnmatch(ignore.patterns[i], match, FNM_CASEFOLD)) continue; |