]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
mod_proxy_fcgi: Don't re-encode SCRIPT_FILENAME. PR 69203
authorYann Ylavic <ylavic@apache.org>
Thu, 1 Aug 2024 14:43:58 +0000 (14:43 +0000)
committerYann Ylavic <ylavic@apache.org>
Thu, 1 Aug 2024 14:43:58 +0000 (14:43 +0000)
commit13963ef367a97bb51836121b5e53a739df7e92c1
tree73c4e7250816bd9dd1e5002e4c8728a833653184
parent58c4d2005d6f7f9348d0d76db2c9e754207467eb
mod_proxy_fcgi: Don't re-encode SCRIPT_FILENAME. PR 69203

Before r1918550 (r1918559 in 2.4.60), "SetHandler proxy:..." configurations
did not pass through proxy_fixup() hence the proxy_canon_handler hooks, leaving
fcgi's SCRIPT_FILENAME environment variable (from r->filename) decoded, or more
exactly not re-encoded.

We still want to call ap_proxy_canon_url() for "fcgi:" to handle/strip the UDS
"unix:" case and check that r->filename is valid and contains no controls, but
proxy_fcgi_canon() will not ap_proxy_canonenc_ex() thus re-encode anymore.

Note that this will do the same for "ProxyPass fcgi:...", there is no reason
that using SetHandler or ProxyPass don't result in the same thing. If an opt
in/out makes sense we should probably look at ProxyFCGIBackendType.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919620 13f79535-47bb-0310-9956-ffa450edef68
changes-entries/bz69203.txt [new file with mode: 0644]
modules/proxy/mod_proxy_fcgi.c