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]

Reply via email to