httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1)" <madhusudan_mathiha...@hp.com>
Subject RE: cvs commit: httpd-2.0/modules/ssl ssl_engine_io.c
Date Fri, 01 Nov 2002 17:08:03 GMT
Wow.. lots of good changes. I think the whole ssl-engine_io.c looks a lot
cleaner now (and thanks for the info regarding how the SSL filter works).
I'm still looking through the changes..

As regards splitting ssl_engine_io.c for input/output filter stuff, I'm +1
for it.

-Madhu

> -----Original Message-----
> From: jerenkrantz@apache.org [mailto:jerenkrantz@apache.org]
> Sent: Friday, November 01, 2002 2:37 AM
> To: httpd-2.0-cvs@apache.org
> Subject: cvs commit: httpd-2.0/modules/ssl ssl_engine_io.c
> 
> 
> jerenkrantz    2002/11/01 02:37:06
> 
>   Modified:    modules/ssl ssl_engine_io.c
>   Log:
>   Add some waypoints to understanding this code
>   
>   Revision  Changes    Path
>   1.90      +8 -0      httpd-2.0/modules/ssl/ssl_engine_io.c
>   
>   Index: ssl_engine_io.c
>   ===================================================================
>   RCS file: /home/cvs/httpd-2.0/modules/ssl/ssl_engine_io.c,v
>   retrieving revision 1.89
>   retrieving revision 1.90
>   diff -u -u -r1.89 -r1.90
>   --- ssl_engine_io.c	1 Nov 2002 10:19:56 -0000	1.89
>   +++ ssl_engine_io.c	1 Nov 2002 10:37:06 -0000	1.90
>   @@ -378,6 +378,9 @@
>        return inl;
>    }
>    
>   +/* This function will read from a brigade and discard the 
> read buckets as it
>   + * proceeds.  It will read at most *len bytes.
>   + */
>    static apr_status_t brigade_consume(apr_bucket_brigade *bb,
>                                        apr_read_type_e block,
>                                        char *c, apr_size_t *len)
>   @@ -694,6 +697,7 @@
>    
>        *len = 0;
>    
>   +    /* If we have something leftover from last time, try 
> that first. */
>        if ((bytes = char_buffer_read(&inctx->cbuf, buf, wanted))) {
>            *len = bytes;
>            if (inctx->mode == AP_MODE_SPECULATIVE) {
>   @@ -724,6 +728,7 @@
>            if (rc > 0) {
>                *len += rc;
>                if (inctx->mode == AP_MODE_SPECULATIVE) {
>   +                /* We want to rollback this read. */
>                    char_buffer_write(&inctx->cbuf, buf, rc);
>                }
>                return inctx->rc;
>   @@ -735,6 +740,7 @@
>                if (APR_STATUS_IS_EAGAIN(inctx->rc)
>                        || APR_STATUS_IS_EINTR(inctx->rc)) {
>                    if (inctx->block == APR_NONBLOCK_READ) {
>   +                    /* Already read something, return 
> APR_SUCCESS instead. */
>                        if (*len > 0) {
>                            inctx->rc = APR_SUCCESS;
>                        }
>   @@ -761,6 +767,7 @@
>                    inctx->rc = APR_EAGAIN;
>    
>                    if (inctx->block == APR_NONBLOCK_READ) {
>   +                    /* Already read something, return 
> APR_SUCCESS instead. */
>                        if (*len > 0) {
>                            inctx->rc = APR_SUCCESS;
>                        }
>   @@ -962,6 +969,7 @@
>            return ssl_io_filter_error(f, bb, status);
>        }
>    
>   +    /* Create a transient bucket out of the decrypted data. */
>        if (len > 0) {
>            apr_bucket *bucket =
>                apr_bucket_transient_create(inctx->buffer, 
> len, f->c->bucket_alloc);
>   
>   
>   
> 

Mime
View raw message