Author: markt Date: Tue May 8 16:58:24 2007 New Revision: 536381 URL: http://svn.apache.org/viewvc?view=rev&rev=536381 Log: Fix bug 42361. Handle multi-part forms when saving request during FORM auth. Patch provided by Peter Runge.
Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java?view=diff&rev=536381&r1=536380&r2=536381 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java Tue May 8 16:58:24 2007 @@ -428,7 +428,14 @@ // Set content type MessageBytes contentType = MessageBytes.newInstance(); - contentType.setString("application/x-www-form-urlencoded"); + + //If no content type specified, use default for POST + String savedContentType = saved.getContentType(); + if (savedContentType == null) { + savedContentType = "application/x-www-form-urlencoded"; + } + + contentType.setString(savedContentType); request.getCoyoteRequest().setContentType(contentType); } } @@ -487,6 +494,7 @@ while ( (bytesRead = is.read(buffer) ) >= 0) { body.append(buffer, 0, bytesRead); } + saved.setContentType(request.getContentType()); saved.setBody(body); } Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java?view=diff&rev=536381&r1=536380&r2=536381 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java Tue May 8 16:58:24 2007 @@ -180,4 +180,17 @@ public void setBody(ByteChunk body) { this.body = body; } + + /** + * The content type of the request, used if this is a POST. + */ + private String contentType = null; + + public String getContentType() { + return (this.contentType); + } + + public void setContentType(String contentType) { + this.contentType = contentType; + } } Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?view=diff&rev=536381&r1=536380&r2=536381 ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Tue May 8 16:58:24 2007 @@ -14,6 +14,16 @@ </properties> <body> +<section name="Tomcat 6.0.14 (remm)"> + <subsection name="Catalina"> + <changelog> + <fix> + <bug>42361</bug>: Handle multi-part forms when saving requests during + FORM authentication process. Patch provided by Peter Runge. (markt) + </fix> + </changelog> + </subsection> +</section> <section name="Tomcat 6.0.13 (remm)"> <subsection name="Catalina"> <changelog> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]