]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: hlua: fixing ambiguous sizeof in hlua_load_per_thread
authorAurelien DARRAGON <adarragon@haproxy.com>
Fri, 23 Sep 2022 06:48:34 +0000 (08:48 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 23 Sep 2022 07:50:11 +0000 (09:50 +0200)
As pointed out by chipitsine in GH #1879, coverity complains
about a sizeof with char ** type where it should be char *.

This was introduced in 'MINOR: hlua: Allow argument on
lua-lod(-per-thread) directives' (ae6b568)

Luckily this had no effect so far because on most platforms
sizeof(char **) == sizeof(char *), but this can not be safely
assumed for portability reasons.

The fix simply changes the argument to sizeof so that it refers to
'*per_thread_load[len]' instead of 'per_thread_load[len]'.

No backport needed.

src/hlua.c

index 2fd710d3a55c155dc605776066511051077696ea..b0c4444bce90ba206038b9f0857c7041e5afe991 100644 (file)
@@ -11335,7 +11335,7 @@ static int hlua_load_per_thread(char **args, int section_type, struct proxy *cur
 
        /* count args excepting the first, allocate array and copy args */
        for (i = 0; *(args[i + 1]) != 0; i++);
-       per_thread_load[len] = calloc(i + 1, sizeof(per_thread_load[len]));
+       per_thread_load[len] = calloc(i + 1, sizeof(*per_thread_load[len]));
        if (per_thread_load[len] == NULL) {
                memprintf(err, "out of memory error");
                return -1;