Loading ssl_engine_io.c +14 −2 Changes for ssl_engine_io.c: 14 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -292,6 +292,8 @@ typedef struct { } char_buffer_t; typedef struct { SSL *ssl; BIO *wbio; ap_filter_t *f; apr_status_t rc; ap_input_mode_t mode; Loading Loading @@ -354,6 +356,14 @@ static int bio_bucket_in_read(BIO *bio, char *in, int inl) int len = 0; apr_off_t readbytes = inl; /* XXX: flush here only required for SSLv2; * OpenSSL calls BIO_flush() at the appropriate times for * the other protocols. */ if (SSL_version(inbio->ssl) == SSL2_VERSION) { BIO_bucket_flush(inbio->wbio); } inbio->rc = APR_SUCCESS; /* first use data already read from socket if any */ Loading Loading @@ -789,6 +799,8 @@ static void ssl_io_input_add_filter(SSLFilterRec *frec, conn_rec *c, frec->pbioRead->ptr = &ctx->inbio; ctx->frec = frec; ctx->inbio.ssl = ssl; ctx->inbio.wbio = frec->pbioWrite; ctx->inbio.f = frec->pInputFilter; ctx->inbio.bb = apr_brigade_create(c->pool); ctx->inbio.bucket = NULL; Loading Loading @@ -825,14 +837,14 @@ void ssl_io_filter_init(conn_rec *c, SSL *ssl) filter = apr_palloc(c->pool, sizeof(SSLFilterRec)); ssl_io_input_add_filter(filter, c, ssl); filter->pOutputFilter = ap_add_output_filter(ssl_io_filter, filter, NULL, c); filter->pbioWrite = BIO_new(BIO_s_bucket()); filter->pbioWrite->ptr = BIO_bucket_new(filter, c); ssl_io_input_add_filter(filter, c, ssl); SSL_set_bio(ssl, filter->pbioRead, filter->pbioWrite); filter->pssl = ssl; Loading Loading
ssl_engine_io.c +14 −2 Changes for ssl_engine_io.c: 14 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -292,6 +292,8 @@ typedef struct { } char_buffer_t; typedef struct { SSL *ssl; BIO *wbio; ap_filter_t *f; apr_status_t rc; ap_input_mode_t mode; Loading Loading @@ -354,6 +356,14 @@ static int bio_bucket_in_read(BIO *bio, char *in, int inl) int len = 0; apr_off_t readbytes = inl; /* XXX: flush here only required for SSLv2; * OpenSSL calls BIO_flush() at the appropriate times for * the other protocols. */ if (SSL_version(inbio->ssl) == SSL2_VERSION) { BIO_bucket_flush(inbio->wbio); } inbio->rc = APR_SUCCESS; /* first use data already read from socket if any */ Loading Loading @@ -789,6 +799,8 @@ static void ssl_io_input_add_filter(SSLFilterRec *frec, conn_rec *c, frec->pbioRead->ptr = &ctx->inbio; ctx->frec = frec; ctx->inbio.ssl = ssl; ctx->inbio.wbio = frec->pbioWrite; ctx->inbio.f = frec->pInputFilter; ctx->inbio.bb = apr_brigade_create(c->pool); ctx->inbio.bucket = NULL; Loading Loading @@ -825,14 +837,14 @@ void ssl_io_filter_init(conn_rec *c, SSL *ssl) filter = apr_palloc(c->pool, sizeof(SSLFilterRec)); ssl_io_input_add_filter(filter, c, ssl); filter->pOutputFilter = ap_add_output_filter(ssl_io_filter, filter, NULL, c); filter->pbioWrite = BIO_new(BIO_s_bucket()); filter->pbioWrite->ptr = BIO_bucket_new(filter, c); ssl_io_input_add_filter(filter, c, ssl); SSL_set_bio(ssl, filter->pbioRead, filter->pbioWrite); filter->pssl = ssl; Loading