BUG/MINOR: cfgparse: Add OOM check for calloc() in cfg_parse_listen()

This commit adds a missing out-of-memory (OOM) check
after the call to `calloc()` in `cfg_parse_listen()`.
If memory allocation fails, an alert is logged, error
codes are set, and parsing is aborted to prevent
undefined behavior.

Co-authored-by: Christian Norbert Menges <christian.norbert.menges@sap.com>
This commit is contained in:
Alexander Stephan 2025-09-01 09:51:19 +00:00 committed by Willy Tarreau
parent c3e69cf065
commit 73f9a75894

View File

@ -2029,6 +2029,12 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int kwm)
len += strlen(args[i]) + 1;
desc = d = calloc(1, len);
if (unlikely(!d)) {
ha_alert("parsing [%s:%d]: '%s %s' : memory allocation failed\n",
file, linenum, args[0], args[1]);
err_code |= ERR_ALERT | ERR_FATAL;
goto out;
}
d += snprintf(d, desc + len - d, "%s", args[2]);
for (i = 3; *args[i]; i++)