There are now tests for both PR 32459 and PR 15207 in httpd-test's
t/modules/proxy.t; the former fails at the moment in 2.1 and the
latter
should fail instead if you flip the silly #define.
sorry - the PR 32459 test is in t/modules/rewrite.t not proxy.t
The below results in corrected behavior... Passes httpd-test
and some testing that I've done here, but would like more
feedback before I commit...
Index: modules/proxy/proxy_util.c
===================================================================
--- modules/proxy/proxy_util.c (revision 149512)
+++ modules/proxy/proxy_util.c (working copy)
@@ -175,7 +175,7 @@
continue;
}
/* decode it if not already done */
- if (isenc && ch == '%') {
+ if (isenc != PROXYREQ_REVERSE && ch == '%') {
if (!apr_isxdigit(x[i + 1]) || !apr_isxdigit(x[i + 2]))
return NULL;
ch = ap_proxy_hex2c(&x[i + 1]);
Index: modules/proxy/mod_proxy.c
===================================================================
--- modules/proxy/mod_proxy.c (revision 149512)
+++ modules/proxy/mod_proxy.c (working copy)
@@ -1,4 +1,3 @@
-#define FIX_15207
/* Copyright 1999-2004 The Apache Software Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");