Connector alignment - this parameter is ignored with BIO
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Tue, 6 Sep 2011 15:49:43 +0000 (15:49 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Tue, 6 Sep 2011 15:49:43 +0000 (15:49 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1165723 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/coyote/http11/Http11AprProcessor.java
java/org/apache/coyote/http11/Http11NioProcessor.java
java/org/apache/coyote/http11/Http11Processor.java

index e4e32cc..e2637f2 100644 (file)
@@ -208,7 +208,13 @@ public class Http11AprProcessor extends AbstractHttp11Processor<Long> {
                         break;
                     }
                 }
-                if (!endpoint.isPaused()) {
+                
+                if (endpoint.isPaused()) {
+                    // 503 - Service unavailable
+                    response.setStatus(503);
+                    adapter.log(request, response, 0);
+                    error = true;
+                } else {
                     request.setStartTime(System.currentTimeMillis());
                     keptAlive = true;
                     inputBuffer.parseHeaders();
index be8114f..11b3050 100644 (file)
@@ -235,7 +235,13 @@ public class Http11NioProcessor extends AbstractHttp11Processor<NioChannel> {
                         break;
                     }
                 }
-                if (!endpoint.isPaused()) {
+                
+                if (endpoint.isPaused()) {
+                    // 503 - Service unavailable
+                    response.setStatus(503);
+                    adapter.log(request, response, 0);
+                    error = true;
+                } else {
                     request.setStartTime(System.currentTimeMillis());
                     keptAlive = true;
                     if ( !inputBuffer.parseHeaders() ) {
index 91e40aa..98c6051 100644 (file)
@@ -165,7 +165,7 @@ public class Http11Processor extends AbstractHttp11Processor<Socket> {
             try {
                 setRequestLineReadTimeout();
                 
-                if (!inputBuffer.parseRequestLine(false)) {
+                if (!inputBuffer.parseRequestLine(keptAlive)) {
                     if (handleIncompleteRequestLineRead()) {
                         break;
                     }