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: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to