]> granicus.if.org Git - apache/commitdiff
Fixed some more env vars which make problems.
authorGuenter Knauf <fuankg@apache.org>
Tue, 12 Jul 2011 16:13:28 +0000 (16:13 +0000)
committerGuenter Knauf <fuankg@apache.org>
Tue, 12 Jul 2011 16:13:28 +0000 (16:13 +0000)
This fix is based on BZ 13029 / 34985, and includes
now the SSL_ and GEOIP_ vars; otherwise its impossible
to run CGIs when mod_ssl and/or mod_geoip are loaded
and those mods return UTF-8 chars in any var during a
request.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1145647 13f79535-47bb-0310-9956-ffa450edef68

modules/arch/win32/mod_win32.c

index b765b1c98630a504cdca0387d9afb115ea883175..7020bc03eaae609ae5b8c15a189fa42c9242778a 100644 (file)
@@ -528,9 +528,10 @@ static apr_status_t ap_cgi_build_command(const char **cmd, const char ***argv,
                 && (strncmp(elts[i].key, "HTTP_", 5) == 0
                  || strncmp(elts[i].key, "SERVER_", 7) == 0
                  || strncmp(elts[i].key, "REQUEST_", 8) == 0
-                 || strcmp(elts[i].key, "QUERY_STRING") == 0
-                 || strcmp(elts[i].key, "PATH_INFO") == 0
-                 || strcmp(elts[i].key, "PATH_TRANSLATED") == 0)) {
+                 || strncmp(elts[i].key, "PATH_", 5) == 0
+                 || strncmp(elts[i].key, "SSL_", 4) == 0
+                 || strncmp(elts[i].key, "GEOIP_", 6) == 0
+                 || strcmp(elts[i].key, "QUERY_STRING") == 0)) {
             prep_string((const char**) &elts[i].val, r->pool);
         }
     }