Author: markt
Date: Tue Sep 6 15:54:51 2011
New Revision: 1165728
URL: http://svn.apache.org/viewvc?rev=1165728&view=rev
Log:
More connector alignment - request header parsing
Modified:
tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java
Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java?rev=1165728&r1=1165727&r2=1165728&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java Tue Sep
6 15:54:51 2011
@@ -217,7 +217,14 @@ public class Http11AprProcessor extends
} else {
request.setStartTime(System.currentTimeMillis());
keptAlive = true;
- inputBuffer.parseHeaders();
+ // Currently only NIO will ever return false here
+ if (!inputBuffer.parseHeaders()) {
+ // We've read part of the request, don't recycle it
+ // instead associate it with the socket
+ openSocket = true;
+ readComplete = false;
+ break;
+ }
if (!disableUploadTimeout) {
Socket.timeoutSet(socketRef,
connectionUploadTimeout * 1000);
Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java?rev=1165728&r1=1165727&r2=1165728&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java Tue Sep
6 15:54:51 2011
@@ -244,9 +244,10 @@ public class Http11NioProcessor extends
} else {
request.setStartTime(System.currentTimeMillis());
keptAlive = true;
- if ( !inputBuffer.parseHeaders() ) {
- //we've read part of the request, don't recycle it
- //instead associate it with the socket
+ // Currently only NIO will ever return false here
+ if (!inputBuffer.parseHeaders()) {
+ // We've read part of the request, don't recycle it
+ // instead associate it with the socket
openSocket = true;
readComplete = false;
break;
Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java?rev=1165728&r1=1165727&r2=1165728&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java Tue Sep 6
15:54:51 2011
@@ -181,7 +181,14 @@ public class Http11Processor extends Abs
keptAlive = true;
// Reset timeout for reading headers
socket.getSocket().setSoTimeout(endpoint.getSoTimeout());
- inputBuffer.parseHeaders();
+ // Currently only NIO will ever return false here
+ if (!inputBuffer.parseHeaders()) {
+ // We've read part of the request, don't recycle it
+ // instead associate it with the socket
+ openSocket = true;
+ readComplete = false;
+ break;
+ }
if (!disableUploadTimeout) {
socket.getSocket().setSoTimeout(connectionUploadTimeout);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]