[prev in list] [next in list] [prev in thread] [next in thread] 

List:       apache-httpd-dev
Subject:    Re: svn commit: r1827359 - in /httpd/httpd/trunk: CHANGES server/protocol.c
From:       Yann Ylavic <ylavic.dev () gmail ! com>
Date:       2018-03-20 21:41:05
Message-ID: CAKQ1sVOKY58R9g+dSJ6Q1N=EeNGPHjL1gX1Kf1dCkHkXRJHL8w () mail ! gmail ! com
[Download RAW message or body]

On Tue, Mar 20, 2018 at 10:33 PM, Eric Covener <covener@gmail.com> wrote:
> On Tue, Mar 20, 2018 at 5:22 PM, Yann Ylavic <ylavic.dev@gmail.com> wrote:
> > On Tue, Mar 20, 2018 at 10:17 PM,  <covener@apache.org> wrote:
> > > Author: covener
> > > Date: Tue Mar 20 21:17:18 2018
> > > New Revision: 1827359
> > > 
> > > URL: http://svn.apache.org/viewvc?rev=1827359&view=rev
> > > Log:
> > > PR62200: EBCDIC: ap_rgetline APR_ENOSPC
> > > 
> > > On EBCDIC systems, translation does not occur in ap_rgetline() if the line is
> > > larger than the buffer size.
> > > 
> > > Submitted By: Hank Ibell
> > > Committed By: covener
> > > 
> > > Modified:
> > > httpd/httpd/trunk/CHANGES
> > > httpd/httpd/trunk/server/protocol.c
> > []
> > > 
> > > Modified: httpd/httpd/trunk/server/protocol.c
> > > URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/protocol.c?rev=1827359&r1=1827358&r2=1827359&view=diff
> > >  ==============================================================================
> > > --- httpd/httpd/trunk/server/protocol.c (original)
> > > +++ httpd/httpd/trunk/server/protocol.c Tue Mar 20 21:17:18 2018
> > > @@ -476,7 +476,7 @@ AP_DECLARE(apr_status_t) ap_rgetline(cha
> > > apr_status_t rv;
> > > 
> > > rv = ap_rgetline_core(s, n, read, r, fold, bb);
> > > -    if (rv == APR_SUCCESS) {
> > > +    if (rv == APR_SUCCESS || APR_STATUS_IS_ENOSPC(rv)) {
> > > ap_xlate_proto_from_ascii(*s, *read);
> > > }
> > > return rv;
> > 
> > Since ap_rgetline_core() is accurate/safe about the returned *read
> > (and even NUL byte), can/should not we do this unconditionally?
> 
> Maybe, but e.g. even in its current incarnation that early APR_BADARG
> return does not set *read.

Yeah, just noticed that, r1827362 :/


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic