BUG/MINOR: log: fix memory error handling in parse_logsrv()

A check was missing in parse_logsrv() to make sure that malloc-dependent
variable is checked for non-NULL before using it.

If malloc fails, the function raises an error and stops, like it's already
done at a few other places within the function.

This partially fixes GH #2130.

It should be backported to every stable versions.
This commit is contained in:
Aurelien DARRAGON 2023-05-11 18:57:23 +02:00 committed by Christopher Faulet
parent d4dba38ab1
commit 256d581fbd

View File

@ -809,6 +809,10 @@ int parse_logsrv(char **args, struct list *logsrvs, int do_del, const char *file
}
node = malloc(sizeof(*node));
if (!node) {
memprintf(err, "out of memory error");
goto error;
}
memcpy(node, logsrv, sizeof(struct logsrv));
node->ref = logsrv;
LIST_INIT(&node->list);