On Thu, Oct 04, 2001 at 01:03:32PM -0700, Justin Erenkrantz wrote: >... > --- modules/ssl/ssl_engine_io.c 2001/10/04 17:50:39 1.37 > +++ modules/ssl/ssl_engine_io.c 2001/10/04 19:54:22 >... > static apr_status_t ssl_io_filter_Input(ap_filter_t *f, > apr_bucket_brigade *pbbOut, > - ap_input_mode_t eMode, > + ap_input_mode_t mode, > apr_off_t *readbytes) > { > apr_status_t ret; > - SSLFilterRec *pRec = f->ctx; > + SSLFilterRec *ctx = f->ctx; > + apr_status_t rv; > + apr_bucket *e; > + apr_off_t *tempread; > > - /* XXX: we don't currently support peek */ > - if (eMode == AP_MODE_PEEK) { > + /* XXX: we don't currently support peek or readbytes == -1 */ > + if (mode == AP_MODE_PEEK || *readbytes == -1) { > return APR_ENOTIMPL; > } > + > + /* Return the requested amount or less. */ > + if (*readbytes) > + { > + /* churn the state machine */ > + ret = churn_input(ctx, mode, readbytes); > + > + if (ret != APR_SUCCESS) > + return ret; > + > + APR_BRIGADE_CONCAT(pbbOut, ctx->b); > + return APR_SUCCESS; > + } > + > + /* Readbytes == 0 implies we only want a LF line. > + * 1024 seems like a good number for now. */ > + *tempread = 1024;
*tempread ?? You might want to assign something to tempread first :-) >... > + pos = memchr(str, APR_ASCII_LF, len); How about a new brigade function first? I don't know much about the rest of how this filter works, but I am seriously suspicious of the removal of the renegotiation code. Cheers, -g -- Greg Stein, http://www.lyra.org/