From dee26e2e1272a9d9eef3934bcfb5b80ac4686c7e Mon Sep 17 00:00:00 2001 From: Bram Matthys Date: Fri, 5 Jun 2026 09:58:16 +0200 Subject: [PATCH] Add const to third argument of unreal_create_match() --- doc/RELEASE-NOTES.md | 3 +++ include/h.h | 2 +- src/conf.c | 2 +- src/match.c | 2 +- src/modules/rpc/spamfilter.c | 2 +- src/modules/tkl.c | 10 +++++----- src/modules/tkldb.c | 2 +- 7 files changed, 13 insertions(+), 10 deletions(-) diff --git a/doc/RELEASE-NOTES.md b/doc/RELEASE-NOTES.md index fa175efc7..3d66a1c20 100644 --- a/doc/RELEASE-NOTES.md +++ b/doc/RELEASE-NOTES.md @@ -22,6 +22,9 @@ This is work in progress and may not always be a stable version. at 1MB like in 6.2.5 (`DOWNLOAD_MAX_SIZE_MEMORY_BACKED`). * The `unreal_match()` function now has a 3rd argument `const char **error` for communicating regex errors back. Just set to `NULL` if you don't care. +* Similarly, `unreal_create_match()` last argument is now `const char **error` + (const was added). So when callers use that, their variable `char *err` + needs to become `const char *err`. * If you do something to a user that would (potentially) move the user from `unknown-users` to `known-users` (or vice versa) then you should call `update_known_user_cache(client);` to update the known users cache. diff --git a/include/h.h b/include/h.h index 85c074631..d24ff3b39 100644 --- a/include/h.h +++ b/include/h.h @@ -1093,7 +1093,7 @@ extern int parse_chanmode(ParseMode *pm, const char *modebuf_in, const char *par extern int dead_socket(Client *to, const char *notice); extern MODVAR pcre2_match_context *unreal_pcre2_match_ctx; extern void init_match(void); -extern Match *unreal_create_match(MatchType type, const char *str, char **error); +extern Match *unreal_create_match(MatchType type, const char *str, const char **error); extern void unreal_delete_match(Match *m); extern int unreal_match(Match *m, const char *str, const char **error); extern int unreal_match_method_strtoval(const char *str); diff --git a/src/conf.c b/src/conf.c index 0c91ec64e..6c51a2718 100644 --- a/src/conf.c +++ b/src/conf.c @@ -10624,7 +10624,7 @@ int _test_alias(ConfigFile *conf, ConfigEntry *ce) { continue; } if (!strcmp(cep->name, "format")) { - char *err = NULL; + const char *err = NULL; Match *expr; char has_type = 0, has_target = 0, has_parameters = 0; diff --git a/src/match.c b/src/match.c index 36e55c4b4..2c27e58f9 100644 --- a/src/match.c +++ b/src/match.c @@ -397,7 +397,7 @@ void unreal_delete_match(Match *m) safe_free(m); } -Match *unreal_create_match(MatchType type, const char *str, char **error) +Match *unreal_create_match(MatchType type, const char *str, const char **error) { Match *m = safe_alloc(sizeof(Match)); static char errorbuf[512]; diff --git a/src/modules/rpc/spamfilter.c b/src/modules/rpc/spamfilter.c index a10bf73ab..bae953101 100644 --- a/src/modules/rpc/spamfilter.c +++ b/src/modules/rpc/spamfilter.c @@ -210,7 +210,7 @@ RPC_CALL_FUNC(rpc_spamfilter_add) char targetbuf[64]; char actionbuf[2]; char reasonbuf[512]; - char *err = NULL; + const char *err = NULL; if (!spamfilter_select_criteria(client, request, params, &name, &match_type, &targets, targetbuf, sizeof(targetbuf), &action, actionbuf)) return; /* Error already communicated to client */ diff --git a/src/modules/tkl.c b/src/modules/tkl.c index d144aba15..d268cf008 100644 --- a/src/modules/tkl.c +++ b/src/modules/tkl.c @@ -533,7 +533,7 @@ int tkl_config_test_spamfilter(ConfigFile *cf, ConfigEntry *ce, int type, int *e if (match && match_type) { Match *m; - char *err; + const char *err; m = unreal_create_match(match_type, match, &err); if (!m) @@ -733,7 +733,7 @@ int tkl_config_run_spamfilter(ConfigFile *cf, ConfigEntry *ce, int type) if (match) { - char *err; + const char *err; m = unreal_create_match(match_type, match, &err); if (!m) { @@ -1227,7 +1227,7 @@ void recompile_spamfilters(void) { TKL *tkl; Match *m; - char *err; + const char *err; int converted = 0; int index; @@ -2517,7 +2517,7 @@ CMD_FUNC(cmd_spamfilter) int n; Match *m; int match_type = 0; - char *err = NULL; + const char *err = NULL; if (IsServer(client)) return; @@ -4741,7 +4741,7 @@ CMD_FUNC(cmd_tkl_add) BanActionValue action; unsigned short target; /* helper variables */ - char *err; + const char *err; if (parc < 12) { diff --git a/src/modules/tkldb.c b/src/modules/tkldb.c index f18efe4d5..21f9baa7a 100644 --- a/src/modules/tkldb.c +++ b/src/modules/tkldb.c @@ -678,7 +678,7 @@ int read_tkldb(void) if (TKLIsSpamfilter(tkl)) { int match_method; - char *err = NULL; + const char *err = NULL; tkl->ptr.spamfilter = safe_alloc(sizeof(Spamfilter));