This is an automated email from the ASF dual-hosted git repository.
mgrigorov pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/7.0.x by this push:
new 91fac27 Check earlier for valid first character
91fac27 is described below
commit 91fac278b92ad33136ec6825fa557a19f426e808
Author: Martin Tzvetanov Grigorov <[email protected]>
AuthorDate: Tue Aug 25 14:28:11 2020 +0300
Check earlier for valid first character
Move the check for the possible characters in the first position
---
java/org/apache/catalina/connector/CoyoteAdapter.java | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/java/org/apache/catalina/connector/CoyoteAdapter.java
b/java/org/apache/catalina/connector/CoyoteAdapter.java
index ea339c0..ab4551e 100644
--- a/java/org/apache/catalina/connector/CoyoteAdapter.java
+++ b/java/org/apache/catalina/connector/CoyoteAdapter.java
@@ -1272,6 +1272,12 @@ public class CoyoteAdapter implements Adapter {
int pos = 0;
int index = 0;
+
+ // The URL must start with '/' (or '\' that will be replaced soon)
+ if (b[start] != (byte) '/' && b[start] != (byte) '\\') {
+ return false;
+ }
+
// Replace '\' with '/'
// Check for null byte
for (pos = start; pos < end; pos++) {
@@ -1287,11 +1293,6 @@ public class CoyoteAdapter implements Adapter {
}
}
- // The URL must start with '/'
- if (b[start] != (byte) '/') {
- return false;
- }
-
// Replace "//" with "/"
for (pos = start; pos < (end - 1); pos++) {
if (b[pos] == (byte) '/') {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]