You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by pq...@apache.org on 2007/11/14 23:17:10 UTC

svn commit: r595093 - /httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c

Author: pquerna
Date: Wed Nov 14 14:17:09 2007
New Revision: 595093

URL: http://svn.apache.org/viewvc?rev=595093&view=rev
Log:
Add AP_MODE_SPECULATIVE support to the mod_serf input filter.

Modified:
    httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c

Modified: httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c
URL: http://svn.apache.org/viewvc/httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c?rev=595093&r1=595092&r2=595093&view=diff
==============================================================================
--- httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c (original)
+++ httpd/sandbox/amsterdam/d/modules/proxy/mod_serf.c Wed Nov 14 14:17:09 2007
@@ -567,8 +567,21 @@
         return APR_SUCCESS;
     }
 
-    if (mode == AP_MODE_EATCRLF || mode == AP_MODE_EXHAUSTIVE ||
-        mode == AP_MODE_SPECULATIVE) {
+    if (mode == AP_MODE_SPECULATIVE) {
+        const char *data;
+        apr_size_t len;
+        apr_bucket *b;
+        serf_bucket_t *sb;
+
+        ctx->serf_bucket_status = serf_bucket_read(ctx->serf_in_bucket,
+                                                   readbytes, &data, &len);
+        
+        sb = serf_bucket_simple_create(data, len, NULL, NULL, ctx->serf_bkt_alloc);
+        serf_bucket_aggregate_prepend(ctx->serf_in_bucket, sb);
+        return APR_SUCCESS;
+    }
+    
+    if (mode == AP_MODE_EATCRLF || mode == AP_MODE_EXHAUSTIVE) {
         abort();
     }
 }