]> granicus.if.org Git - apache/commitdiff
Err, that was a bit redundant. Eliminate the redundant test [and clean
authorWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 22 Mar 2002 05:52:16 +0000 (05:52 +0000)
committerWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 22 Mar 2002 05:52:16 +0000 (05:52 +0000)
  up some tabs I inadvertantly introduced.]

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

server/gen_test_char.c

index 9b62163e8714cafef6ef772e5bd5a58ab0617fb2..946bb7bb0ae56d089a4ed6a7684f72bac2aac265 100644 (file)
@@ -102,14 +102,6 @@ int main(int argc, char *argv[])
             printf("\n    ");
 
         /* escape_shell_cmd */
-        if (strchr("&;`'\"|*?~<>^()[]{}$\\\n", c)) {
-            flags |= T_ESCAPE_SHELL_CMD;
-        }
-
-        if (!apr_isalnum(c) && !strchr("$-_.+!*'(),:@&=~", c)) {
-            flags |= T_ESCAPE_PATH_SEGMENT;
-        }
-
 #if defined(WIN32) || defined(OS2)
         /* Win32/OS2 have many of the same vulnerable characters
          * as Unix sh, plus the carriage return and percent char.
@@ -118,16 +110,22 @@ int main(int argc, char *argv[])
          * and neither lf nor cr can be escaped.  We escape unix 
          * specific as well, to assure that cross-compiled unix 
          * applications behave similiarly when invoked on win32/os2.
+         *
+         * Rem please keep in-sync with apr's list in win32/filesys.c
          */
         if (strchr("&;`'\"|*?~<>^()[]{}$\\\n\r%", c)) {
-           flags |= T_ESCAPE_SHELL_CMD;
-       }
+            flags |= T_ESCAPE_SHELL_CMD;
+        }
 #else
         if (strchr("&;`'\"|*?~<>^()[]{}$\\\n", c)) {
-           flags |= T_ESCAPE_SHELL_CMD;
-       }
+            flags |= T_ESCAPE_SHELL_CMD;
+        }
 #endif
 
+        if (!apr_isalnum(c) && !strchr("$-_.+!*'(),:@&=~", c)) {
+            flags |= T_ESCAPE_PATH_SEGMENT;
+        }
+
         if (!apr_isalnum(c) && !strchr("$-_.+!*'(),:@&=/~", c)) {
             flags |= T_OS_ESCAPE_PATH;
         }