On Nov 10, 2011, at 11:42 AM, Paul Querna wrote: > > This means every input filter, must implement all of these different > modes. This significantly complicates modules like mod_ssl and > reqtimeout. Every module to support things like speculative must > support buffering internally. > > I would like to change the function signature for connection level > input filters to: > > apr_status_t func( > ap_filter_t *f, > apr_bucket_brigade *b); > > The function always be allowed to return EAGAIN. It would not be > responsible for polling or blocking. > > This would massively simplify how most input filters work, and would > enable more creative methods of network IO inside the MPMs. >
Assuming that we want to keep input filters (and filters in general), certainly the current design needs this kind of adjustment. ++1 on centralization and simplification.
