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/