BUILD: acl: silence a possible null deref warning in parse_acl_expr()

The fix in commit 441cd614f9 ("BUG/MINOR: acl: set arg_list->kw to
aclkw->kw string literal if aclkw is found") involves an unchecked
access to "al" after that one is tested for possibly being NULL. This
rightfully upsets Coverity (GH #3095) and might also trigger warnings
depending on the compilers. However, no known caller to date passes
a NULL arg list here so there's no way to trigger this theoretical
bug.

This should be backported along with the fix above to avoid emitting
warnings, possibly as far as 2.6 since that fix was tagged as such.
This commit is contained in:
Willy Tarreau 2025-09-02 17:41:51 +02:00
parent c128887b8e
commit 4902195313

View File

@ -171,7 +171,9 @@ struct acl_expr *parse_acl_expr(const char **args, char **err, struct arg_list *
if (aclkw) { if (aclkw) {
/* OK we have a real ACL keyword */ /* OK we have a real ACL keyword */
if (al)
al->kw = aclkw->kw; al->kw = aclkw->kw;
/* build new sample expression for this ACL */ /* build new sample expression for this ACL */
smp = calloc(1, sizeof(*smp)); smp = calloc(1, sizeof(*smp));
if (!smp) { if (!smp) {