On Sat, Aug 07, 2021 at 06:33:49PM +0200, Dirk-Willem van Gulik wrote: 
...
> What I am seeing is a first brigade with the POST content; with a 
> terminating EOF. The bbout data makes it to the CGI script or 
> (reverse) proxy.
> 
> But I am then getting a second _input_filter call with a second 
> brigade of just an EOS packet.
> 
> What causes that ? Or am I not running through the brigade properly ?

You're not doing anything wrong, it seems to be a "feature" of the way 
input filtering is implemented and should probably be better documented.  
I wrote this in mod_ssl:

        /* Surprisingly (and perhaps, wrongly), the request body can be
         * pulled from the input filter stack more than once; a
         * handler may read it, and ap_discard_request_body() will
         * attempt to do so again after *every* request.  So input
         * filters must be prepared to give up an EOS if invoked after
         * initially reading the request. The HTTP_IN filter does this
         * with its ->eos_sent flag. */

https://svn.apache.org/viewvc/httpd/httpd/trunk/modules/ssl/ssl_engine_io.c?view=markup#l2205

Regards, Joe

Reply via email to