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+.
---
 src/cfgparse-listen.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/cfgparse-listen.c b/src/cfgparse-listen.c
index a493e741c..ea1a60897 100644
--- a/src/cfgparse-listen.c
+++ b/src/cfgparse-listen.c
@@ -1510,6 +1510,10 @@ int cfg_parse_listen(const char *file, int linenum, char 
**args, int kwm)
                }
                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) {
-- 
2.29.0


Reply via email to