You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2014/11/10 14:41:21 UTC
svn commit: r1637848 - in /tomcat/tc8.0.x/trunk/java/org/apache/catalina:
connector/CoyoteAdapter.java mapper/Mapper.java
Author: remm
Date: Mon Nov 10 13:41:20 2014
New Revision: 1637848
URL: http://svn.apache.org/r1637848
Log:
Port r1637839
57187 again: handle * before mapping.
Modified:
tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
tomcat/tc8.0.x/trunk/java/org/apache/catalina/mapper/Mapper.java
Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?rev=1637848&r1=1637847&r2=1637848&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java (original)
+++ tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Mon Nov 10 13:41:20 2014
@@ -778,6 +778,27 @@ public class CoyoteAdapter implements Ad
req.serverName().setString(proxyName);
}
+ // Check for ping OPTIONS * request
+ if (req.requestURI().equals("*")) {
+ if (req.method().equalsIgnoreCase("OPTIONS")) {
+ StringBuilder allow = new StringBuilder();
+ allow.append("GET, HEAD, POST, PUT, DELETE");
+ // Trace if allowed
+ if (connector.getAllowTrace()) {
+ allow.append(", TRACE");
+ }
+ // Always allow options
+ allow.append(", OPTIONS");
+ res.setHeader("Allow", allow.toString());
+ } else {
+ res.setStatus(404);
+ res.setMessage("Not found");
+ }
+ connector.getService().getContainer().logAccess(
+ request, response, 0, true);
+ return false;
+ }
+
// Copy the raw URI to the decodedURI
MessageBytes decodedURI = req.decodedURI();
decodedURI.duplicate(req.requestURI());
Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/mapper/Mapper.java
URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/mapper/Mapper.java?rev=1637848&r1=1637847&r2=1637848&view=diff
==============================================================================
--- tomcat/tc8.0.x/trunk/java/org/apache/catalina/mapper/Mapper.java (original)
+++ tomcat/tc8.0.x/trunk/java/org/apache/catalina/mapper/Mapper.java Mon Nov 10 13:41:20 2014
@@ -846,15 +846,6 @@ public final class Mapper {
path.setOffset(servletPath);
- if ((pathEnd - pathOffset) == 1 && path.getBuffer()[pathOffset] == '*') {
- // Special "*" URL
- if (contextVersion.defaultWrapper != null) {
- mappingData.wrapper = contextVersion.defaultWrapper.object;
- mappingData.wrapperPath.setString("*");
- }
- return;
- }
-
// Rule 1 -- Exact Match
MappedWrapper[] exactWrappers = contextVersion.exactWrappers;
internalMapExactWrapper(exactWrappers, path, mappingData);
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org