]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
[BUG] config: cookie domain was ignored in defaults sections
authorWilly Tarreau <w@1wt.eu>
Thu, 3 Dec 2009 22:13:06 +0000 (23:13 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 3 Dec 2009 22:23:28 +0000 (23:23 +0100)
Since cookie can appear in a defaults section, the domain extension
must be supported there as well.

src/cfgparse.c

index fb5b2f5ed595b48ec11486c0f4be231f69bcbce4..b2e6145f5e188406798d2aaf647b7309f76076d7 100644 (file)
@@ -910,6 +910,8 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int inv)
                        if (defproxy.cookie_name)
                                curproxy->cookie_name = strdup(defproxy.cookie_name);
                        curproxy->cookie_len = defproxy.cookie_len;
+                       if (defproxy.cookie_domain)
+                               curproxy->cookie_domain = strdup(defproxy.cookie_domain);
 
                        if (defproxy.url_param_name)
                                curproxy->url_param_name = strdup(defproxy.url_param_name);
@@ -977,6 +979,7 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int inv)
                 */
                free(defproxy.check_req);
                free(defproxy.cookie_name);
+               free(defproxy.cookie_domain);
                free(defproxy.url_param_name);
                free(defproxy.hh_name);
                free(defproxy.capture_name);
@@ -1253,6 +1256,7 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int inv)
                        goto out;
                }
 
+               free(curproxy->cookie_domain); curproxy->cookie_domain = NULL;
                free(curproxy->cookie_name);
                curproxy->cookie_name = strdup(args[1]);
                curproxy->cookie_len = strlen(curproxy->cookie_name);