You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mt...@apache.org on 2008/09/16 13:30:54 UTC

svn commit: r695816 - in /tomcat/connectors/trunk/jk: native/apache-2.0/mod_jk.c native/common/jk_ajp_common.c native/common/jk_service.h native/common/jk_util.c xdocs/miscellaneous/changelog.xml

Author: mturk
Date: Tue Sep 16 04:30:52 2008
New Revision: 695816

URL: http://svn.apache.org/viewvc?rev=695816&view=rev
Log:
Fix #45812 by adding done() service method and sending EOS on JK_AJP13_END_RESPONSE

Modified:
    tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
    tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
    tomcat/connectors/trunk/jk/native/common/jk_service.h
    tomcat/connectors/trunk/jk/native/common/jk_util.c
    tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

Modified: tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c?rev=695816&r1=695815&r2=695816&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c (original)
+++ tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c Tue Sep 16 04:30:52 2008
@@ -405,6 +405,16 @@
 #endif
 }
 
+static void JK_METHOD ws_done(jk_ws_service_t *s)
+{
+#if ! (defined(AS400) && !defined(AS400_UTF8))
+    if (s && s->ws_private) {
+        apache_private_data_t *p = s->ws_private;
+        ap_finalize_request_protocol(p->r);
+    }
+#endif
+}
+
 /*
  * Write a chunk of response data back to the browser.  If the headers
  * haven't yet been sent over, send over default header values (Status =
@@ -652,6 +662,7 @@
     s->read = ws_read;
     s->write = ws_write;
     s->flush = ws_flush;
+    s->done = ws_done;
     s->add_log_items = ws_add_log_items;
     s->next_vhost = ws_next_vhost;
     s->vhost_to_text = ws_vhost_to_text;

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c?rev=695816&r1=695815&r2=695816&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Tue Sep 16 04:30:52 2008
@@ -1749,6 +1749,9 @@
         /* Flush after the last write */
         if (r->flush && !r->flush_packets)
             r->flush(r);
+        /* Done with response */
+        if (r->done)
+            r->done(r);
 
         JK_TRACE_EXIT(l);
         return JK_AJP13_END_RESPONSE;

Modified: tomcat/connectors/trunk/jk/native/common/jk_service.h
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_service.h?rev=695816&r1=695815&r2=695816&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_service.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_service.h Tue Sep 16 04:30:52 2008
@@ -291,6 +291,11 @@
     void (JK_METHOD * flush) (jk_ws_service_t *s);
 
     /*
+     * Done with sending response back to the browser.
+     */
+    void (JK_METHOD * done) (jk_ws_service_t *s);
+
+    /*
      * If set do not reuse socket after each full response
      */
     int disable_reuse;

Modified: tomcat/connectors/trunk/jk/native/common/jk_util.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_util.c?rev=695816&r1=695815&r2=695816&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_util.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_util.c Tue Sep 16 04:30:52 2008
@@ -1908,6 +1908,7 @@
     s->read = NULL;
     s->write = NULL;
     s->flush = NULL;
+    s->done = NULL;
     s->disable_reuse = JK_FALSE;
     s->add_log_items = NULL;
     s->next_vhost = NULL;

Modified: tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml?rev=695816&r1=695815&r2=695816&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml Tue Sep 16 04:30:52 2008
@@ -43,6 +43,11 @@
   <br />
   <subsection name="Native">
     <changelog>
+      <fix>
+        <bug>45812</bug>: Add done() service method that
+        causes sending EOS bucket for Apache httpd 2.x.
+        This allows filter chain to work properly. (mturk)
+      </fix>
       <update>
         Added connection_keepalive directive. (mturk)
       </update>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org