You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by BugRat Mail System <to...@cortexity.com> on 2000/11/15 17:38:34 UTC

BugRat Report #390 has been filed.

Bug report #390 has just been filed.

You can view the report at the following URL:

   <http://znutar.cortexity.com:8888/BugRatViewer/ShowReport/390>

REPORT #390 Details.

Project: Tomcat
Category: Feature Requests
SubCategory: New Feature
Class: swbug
State: received
Priority: high
Severity: serious
Confidence: public
Environment: 
   Release: Tomcatr 3.2 beta6+7
   JVM Release: Sun JDK1.2.2 + JDK1.3
   Operating System: Solaris 7
   OS Release: SunOs 5.7 Generic_106541-1
   Platform: E450 3.5GB 4*ultrasparc II 300Mhz

Synopsis: 
(more readable report) AJP13 - buffer overread for POST data with apache and mod_jk 

Description:
I'm using using a servlet to read data POSTed by a html form, everything works ok unless one of the fields get longer than about 1400 characters. If that happens tomcat produces the follow error:<P>
 (Static trace from tomcat 3.2beta-7)
<P>
 java.lang.ArrayIndexOutOfBoundsException at org.apache.tomcat.service.connector.Ajp13ConnectorRequest.doRead(Ajp13ConnectorRequest.java:255)<BR> at org.apache.tomcat.service.connector.Ajp13ConnectorRequest.doRead(Ajp13ConnectorRequest.java:262)<BR> at org.apache.tomcat.core.BufferedServletInputStream.doRead(BufferedServletInputStream.java:111)<BR> at org.apache.tomcat.core.BufferedServletInputStream.read(BufferedServletInputStream.java:144)<BR> at javax.servlet.http.HttpUtils.parsePostData(HttpUtils.java:235)<BR> at org.apache.tomcat.util.RequestUtil.readFormData(RequestUtil.java:101)<BR> at org.apache.tomcat.core.RequestImpl.handleParameters(RequestImpl.java:691)<BR> at org.apache.tomcat.core.RequestImpl.getParameterValues(RequestImpl.java:259)<BR> at org.apache.tomcat.core.RequestImpl.getParameter(RequestImpl.java:250)<BR> at org.apache.tomcat.facade.HttpServletRequestFacade.getParameter(HttpServletRequestFacade.java:222)<BR> at org.apache.jasper.servlet.JspServlet.preCompi!
le(JspServlet.java:326)<BR> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:370)<BR> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)<BR> at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)<BR> at org.apache.tomcat.core.Handler.service(Handler.java:286) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)<BR> at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:799)<BR> at org.apache.tomcat.core.ContextManager.service(ContextManager.java:745)<BR> at org.apache.tomcat.service.connector.Ajp13ConnectionHandler.processConnection(Ajp13ConnectionHandler.java:160)<BR> at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:407)<BR> at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)<BR> at java.lang.Thread.run(Thread.java:479)<P>
 It looks like a buffer is being overread here. Notes that my jsp page is nowhere in the stack trace so this must be an internal tomcat problem. I've reproduced the bug under both JDK1.2.2 and JDK1.3.0 from Sun, and for both tomcat 3.2 beta6 and beta7