svn commit: r1935008 - in httpd/httpd/branches/2.4.x: . modules/proxy

[email protected] Fri, 05 Jun 2026 10:07:34 -0000
Newsgroups gmane.comp.apache.cvs
Message-ID <178065405455.3065696.9548082666418566622@svn03-he-fi>
Author: covener
Date: Fri Jun  5 10:07:34 2026
New Revision: 1935008

Log:
Merge r1935007 from trunk:

ap_proxy_cookie_revers: fix dup path/domain


Reviewed By: covener, jailletc36, jfclere

Modified:
   httpd/httpd/branches/2.4.x/   (props changed)
   httpd/httpd/branches/2.4.x/modules/proxy/proxy_util.c

Modified: httpd/httpd/branches/2.4.x/modules/proxy/proxy_util.c
==============================================================================
--- httpd/httpd/branches/2.4.x/modules/proxy/proxy_util.c	Fri Jun  5 10:06:53 2026	(r1935007)
+++ httpd/httpd/branches/2.4.x/modules/proxy/proxy_util.c	Fri Jun  5 10:07:34 2026	(r1935008)
@@ -1036,6 +1036,12 @@ PROXY_DECLARE(const char *) ap_proxy_coo
             poffs = pathp - tmpstr_orig;
             l1 = strlen(pathp);
             pathe = str + poffs + l1;
+            /*
+             * RFC 6265 § 5.3 7): Only the last path= should be meaningful
+             * so reset anything previously found.
+             */
+            newpath = NULL;
+            pdiff = 0;
             if (conf->interpolate_env == 1) {
                 ent = (struct proxy_alias *)rconf->cookie_paths->elts;
             }
@@ -1056,6 +1062,12 @@ PROXY_DECLARE(const char *) ap_proxy_coo
             doffs = domainp - tmpstr_orig;
             l1 = strlen(domainp);
             domaine = str + doffs + l1;
+            /*
+             * RFC 6265 § 5.3 4): Only the last domain= should be meaningful
+             * so reset anything previously found.
+             */
+            newdomain = NULL;
+            ddiff = 0;
             if (conf->interpolate_env == 1) {
                 ent = (struct proxy_alias *)rconf->cookie_domains->elts;
             }