On 11/24/2014 01:37 PM, Eric Covener wrote:
please check r1641381

Anyone against proposing r1609680 (commit from the subject) + r1641381 for 2.4.x?

Regards,
Jan Kaluza

On Sun, Nov 23, 2014 at 9:59 PM, Eric Covener <cove...@gmail.com> wrote:
On Sun, Nov 23, 2014 at 9:57 PM, Eric Covener <cove...@gmail.com> wrote:
On Fri, Jul 11, 2014 at 6:36 AM,  <jkal...@apache.org> wrote:
static int ap_proxy_strcmp_ematch(const char *str, const char *expected)
+{
+    apr_size_t x, y;
+
+    for (x = 0, y = 0; expected[y]; ++y, ++x) {
+        if ((!str[x]) && (expected[y] != '
|| !apr_isdigit(expected[y + 1])))
+            return -1;
+        if (expected[y] == ' && apr_isdigit(expected[y + 1])) {
+            while (expected[y] == ' && apr_isdigit(expected[y + 1]))
+                y += 2;
+            if (!expected[y])
+                return 0;
+            while (str[x]) {
+                int ret;
+                if ((ret = ap_proxy_strcmp_ematch(&str[x++], &expected[y])) != 
1)
+                    return ret;
+            }
+            return -1;
+        }
+        else if (expected[y] == '\\') {
+            /* NUL is an invalid char! */
+            if (!expected[++y])
+                return -2;
+        }
+        if (str[x] != expected[y])
+            return 1;
+    }
+    return (str[x] != '\0');
+}


Sorry, stray keystroke (tab?) made gmail send early.

This is breaking the common PHP-FPM recipes using unix domain sockets
in trunk e.g.

     ProxyPassMatch ^/info.php$
"unix:/var/run/php5-fpm.sock|fcgi://localhost/home/covener/SRC/httpd-trunk/built/htdocs/"

The old test accepted the worker URL being a prefix of the worker:

     strncmp(url_copy, worker->s->name, worker_name_length) == 0)

but now that doesn't happen for ProxyPassMatch.  This seems to be
due to the last return expecting str[x] to have been totally consumed
by the expected (worker) string.


--
Eric Covener
cove...@gmail.com




Reply via email to