BUG/MINOR: acl: Properly detect overwritten matching method

A bug was introduced by the commit 6ea50ba46 ("MINOR: acl; Warn when
matching method based on a suffix is overwritten"). The test on the match
function, when defined was not correct. It is now fixed.

No backport needed, except if the commit above is backported.
This commit is contained in:
Christopher Faulet 2025-09-01 21:36:22 +02:00
parent f8b7299ee7
commit 8c555a4a4e

View File

@ -410,7 +410,7 @@ struct acl_expr *parse_acl_expr(const char **args, char **err, struct arg_list *
if (((aclkw->match_type == PAT_MATCH_BEG || aclkw->match_type == PAT_MATCH_DIR || aclkw->match_type == PAT_MATCH_DOM || if (((aclkw->match_type == PAT_MATCH_BEG || aclkw->match_type == PAT_MATCH_DIR || aclkw->match_type == PAT_MATCH_DOM ||
aclkw->match_type == PAT_MATCH_DOM || aclkw->match_type == PAT_MATCH_END || aclkw->match_type == PAT_MATCH_LEN || aclkw->match_type == PAT_MATCH_DOM || aclkw->match_type == PAT_MATCH_END || aclkw->match_type == PAT_MATCH_LEN ||
aclkw->match_type == PAT_MATCH_REG) && expr->pat.match != pat_match_fcts[aclkw->match_type]) || aclkw->match_type == PAT_MATCH_REG) && expr->pat.match != pat_match_fcts[aclkw->match_type]) ||
(aclkw->match && expr->pat.match != pat_match_fcts[aclkw->match_type])) (aclkw->match && expr->pat.match != aclkw->match))
ha_warning("parsing [%s:%d] : original matching method '%s' was overwritten and will not be applied as expected.\n", ha_warning("parsing [%s:%d] : original matching method '%s' was overwritten and will not be applied as expected.\n",
file, line, aclkw->kw); file, line, aclkw->kw);
} }