Author: markt
Date: Wed Apr 8 21:56:15 2015
New Revision: 1672204
URL: http://svn.apache.org/r1672204
Log:
Make creation of upgrade Processor more robust. Fail the connection if the
expected Processor cannot be created.
Modified:
tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java
tomcat/trunk/java/org/apache/coyote/LocalStrings.properties
Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1672204&r1=1672203&r2=1672204&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Wed Apr 8
21:56:15 2015
@@ -649,6 +649,14 @@ public abstract class AbstractProtocol<S
getProtocol().getNegotiatedProtocol(negotiatedProtocol);
if (upgradeProtocol != null) {
processor = upgradeProtocol.getProcessor(wrapper);
+ } else if (negotiatedProtocol.equals("http/1.1")) {
+ // Explicitly negotiated the default protocol.
+ // Obtain a processor below.
+ } else {
+ // Failed to create processor. This is a bug.
+ throw new IllegalStateException(sm.getString(
+
"abstractConnectionHandler.negotiatedProcessor.fail",
+ negotiatedProtocol));
}
}
}
Modified: tomcat/trunk/java/org/apache/coyote/LocalStrings.properties
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/LocalStrings.properties?rev=1672204&r1=1672203&r2=1672204&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/LocalStrings.properties (original)
+++ tomcat/trunk/java/org/apache/coyote/LocalStrings.properties Wed Apr 8
21:56:15 2015
@@ -15,6 +15,7 @@
abstractConnectionHandler.error=Error reading request, ignored
abstractConnectionHandler.ioexception.debug=IOExceptions are normal, ignored
abstractConnectionHandler.socketexception.debug=SocketExceptions are normal,
ignored
+abstractConnectionHandler.negotiatedProcessor.fail=Failed to create Processor
for negotiated protocol [{0}]
abstractProcessor.nonContainerThreadError=An error occurred in processing
while on a non-container thread. The connection will be closed immediately
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]