Author: markt Date: Wed Feb 11 20:42:27 2009 New Revision: 743497 URL: http://svn.apache.org/viewvc?rev=743497&view=rev Log: Port r742915 to trunk. Make sure the 400 is returned to the browser. (like other connectors).
Modified: tomcat/trunk/ (props changed) tomcat/trunk/java/org/apache/jk/common/ChannelNioSocket.java tomcat/trunk/java/org/apache/jk/common/ChannelSocket.java tomcat/trunk/java/org/apache/jk/common/HandlerRequest.java Propchange: tomcat/trunk/ ------------------------------------------------------------------------------ svn:mergeinfo = /tomcat/tc6.0.x/trunk:742915 Modified: tomcat/trunk/java/org/apache/jk/common/ChannelNioSocket.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jk/common/ChannelNioSocket.java?rev=743497&r1=743496&r2=743497&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jk/common/ChannelNioSocket.java (original) +++ tomcat/trunk/java/org/apache/jk/common/ChannelNioSocket.java Wed Feb 11 20:42:27 2009 @@ -56,6 +56,7 @@ import org.apache.coyote.Request; import org.apache.coyote.RequestGroupInfo; import org.apache.coyote.RequestInfo; +import org.apache.coyote.ActionCode; import org.apache.tomcat.util.threads.ThreadPool; import org.apache.tomcat.util.threads.ThreadPoolRunnable; @@ -854,6 +855,7 @@ status= invoke( recv, ep ); if( status != JkHandler.OK ) { log.warn("processCallbacks status " + status ); + ep.action(ActionCode.ACTION_CLOSE, ep.getRequest().getResponse()); return false; } synchronized(this) { Modified: tomcat/trunk/java/org/apache/jk/common/ChannelSocket.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jk/common/ChannelSocket.java?rev=743497&r1=743496&r2=743497&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jk/common/ChannelSocket.java (original) +++ tomcat/trunk/java/org/apache/jk/common/ChannelSocket.java Wed Feb 11 20:42:27 2009 @@ -45,6 +45,7 @@ import org.apache.coyote.Request; import org.apache.coyote.RequestGroupInfo; import org.apache.coyote.RequestInfo; +import org.apache.coyote.ActionCode; import org.apache.tomcat.util.modeler.Registry; import org.apache.tomcat.util.threads.ThreadPool; import org.apache.tomcat.util.threads.ThreadPoolRunnable; @@ -697,6 +698,7 @@ status= this.invoke( recv, ep ); if( status!= JkHandler.OK ) { log.warn("processCallbacks status " + status ); + ep.action(ActionCode.ACTION_CLOSE, ep.getRequest().getResponse()); break; } } Modified: tomcat/trunk/java/org/apache/jk/common/HandlerRequest.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jk/common/HandlerRequest.java?rev=743497&r1=743496&r2=743497&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jk/common/HandlerRequest.java (original) +++ tomcat/trunk/java/org/apache/jk/common/HandlerRequest.java Wed Feb 11 20:42:27 2009 @@ -264,8 +264,16 @@ twa.setParam(control, ep.getRequest().unparsedURI()); } } catch( Exception ex ) { + /* If we are here it is because we have a bad header or something like that */ log.error( "Error decoding request ", ex ); msg.dump( "Incomming message"); + Response res=ep.getRequest().getResponse(); + if ( res==null ) { + res=new Response(); + ep.getRequest().setResponse(res); + } + res.setMessage("Bad Request"); + res.setStatus(400); return ERROR; } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org