BUG/MINOR: cfgparse: Fail if the strdup() for `rule->be.name` for `use_backend` fails
This patch fixes GitHub issue #1024.
I could track the `strdup` back to commit
3a1f5fda109fc56ae127d03eaf34ce027c9542e1 which is 1.9-dev8. It's probably not
worth the effort to backport it across this refactoring.
This patch should be backported to 1.9+.
(cherry picked from commit 5ce5a1586d8c67affa604dedf0faa2c5a02ecab5)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit f46d9cd735d1664c113c041d85179a81bded8fc6)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit fdca7df8181de29a661be4e8f91160b087843167)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit e43d3600011e7e13c519917757f204c42c716841)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/cfgparse-listen.c b/src/cfgparse-listen.c
index d4f9d1e..2ecf951 100644
--- a/src/cfgparse-listen.c
+++ b/src/cfgparse-listen.c
@@ -1695,6 +1695,10 @@
}
rule->cond = cond;
rule->be.name = strdup(args[1]);
+ if (!rule->be.name) {
+ ha_alert("Out of memory error.\n");
+ goto out;
+ }
rule->line = linenum;
rule->file = strdup(file);
if (!rule->file) {