Re: svn commit: r1715401 - in /httpd/httpd/trunk: include/ap_mmn.h include/httpd.h server/util.c

2015-11-20 Thread Yann Ylavic
Alternatively, a single/simpler while (n--){} would work too. On Fri, Nov 20, 2015 at 11:17 PM, Yann Ylavic wrote: > On Fri, Nov 20, 2015 at 7:49 PM, wrote: >> Author: jim >> Date: Fri Nov 20 18:49:38 2015 >> New Revision: 1715401 >> >> URL: http://svn.apache.org/viewvc?rev=1715401&view=rev >>

Re: svn commit: r1715401 - in /httpd/httpd/trunk: include/ap_mmn.h include/httpd.h server/util.c

2015-11-20 Thread Yann Ylavic
On Fri, Nov 20, 2015 at 7:49 PM, wrote: > Author: jim > Date: Fri Nov 20 18:49:38 2015 > New Revision: 1715401 > > URL: http://svn.apache.org/viewvc?rev=1715401&view=rev > Log: > Provide our own impl of str[n]casecmp() > > This simply provides it. Next step is to change all uses of > str[n]casecm

Re: strncasecmp

2015-11-20 Thread William A Rowe Jr
At first glance this seems to meet the POSIX definition in the POSIX context. Just want to be careful about using this for non-posix applications and your doxygen seems to cover this. Looks good to me. Implemented in r1715401 If people want to nit-pick about naming and wish to rename it to somet

Re: strncasecmp

2015-11-20 Thread Christophe JAILLET
Le 20/11/2015 18:17, Jim Jagielski a écrit : Ideally, it would be in apr +1 This could also be even more interesting, because of apr_table_ functions. CJ

Re: strncasecmp

2015-11-20 Thread Jim Jagielski
Implemented in r1715401 If people want to nit-pick about naming and wish to rename it to something else, be my guest. > On Nov 20, 2015, at 1:03 PM, Yann Ylavic wrote: > > +1 > > On Fri, Nov 20, 2015 at 6:17 PM, Jim Jagielski wrote: >> We use str[n]casecmp quite a bit. The rub is that some >>

RE: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Bert Huijben
> -Original Message- > From: Jim Jagielski [mailto:j...@jagunet.com] > Sent: vrijdag 20 november 2015 17:04 > To: dev@httpd.apache.org > Subject: Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: > h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h > h2_util.c h

RE: H2 stream dependencies

2015-11-20 Thread Bert Huijben
> -Original Message- > From: Stefan Eissing [mailto:stefan.eiss...@greenbytes.de] > Sent: vrijdag 20 november 2015 10:26 > To: dev@httpd.apache.org > Subject: Re: H2 stream dependencies > > Bert, > > interesting and nice to see the progress. You probably could use priorities > for > orde

Re: strncasecmp

2015-11-20 Thread William A Rowe Jr
Pay special attention to; The *strncasecmp*() function shall compare, *while ignoring differences in case*, not more than *n* bytes from the string pointed to by *s1* to the string pointed to by *s2*. In the POSIX locale, *strcasecmp*() and *strncasecmp*() shall *behave as if the strings had been

Re: strncasecmp

2015-11-20 Thread William A Rowe Jr
I'm +1 if you are suggesting an ascii-only implementation, and by all means introduce both an ap_ and apr_ flavor at the same time. E.g. apr[r]_ascii_str[n]casecmp(). All characters <'A' || >'Z' && <'a || >'z' should be compared by identity. I'm not sure which OS/X implementation you are referri

Re: strncasecmp

2015-11-20 Thread Yann Ylavic
+1 On Fri, Nov 20, 2015 at 6:17 PM, Jim Jagielski wrote: > We use str[n]casecmp quite a bit. The rub is that some > platforms use a sensible implementation (such as OSX) which > uses a upper-lowercase map and is v. fast, and others > use a brain-dead version which does an actual tolower() of > ea

Re: strncasecmp

2015-11-20 Thread Christophe JAILLET
+1 Le 20/11/2015 18:17, Jim Jagielski a écrit : We use str[n]casecmp quite a bit. The rub is that some platforms use a sensible implementation (such as OSX) which uses a upper-lowercase map and is v. fast, and others use a brain-dead version which does an actual tolower() of each char in the st

Re: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c

2015-11-20 Thread Marion & Christophe JAILLET
That was I first thought too. When I looked at r1715255, I noticed: const char *conn = apr_table_get(r->headers_in, "Connection"); if (ap_find_token(r->pool, conn, "upgrade")) { and looked for inconsistencies. When digging deeper, I found that "Connection Upgrade" was used in m

strncasecmp

2015-11-20 Thread Jim Jagielski
We use str[n]casecmp quite a bit. The rub is that some platforms use a sensible implementation (such as OSX) which uses a upper-lowercase map and is v. fast, and others use a brain-dead version which does an actual tolower() of each char in the string as it tests. We actually try to handle this in

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Jim Jagielski
> On Nov 20, 2015, at 11:25 AM, Yann Ylavic wrote: > > On Fri, Nov 20, 2015 at 5:04 PM, Jim Jagielski wrote: >> Ugg... I *just* noticed: >> >>However, header field names MUST be converted to lowercase >>prior to their encoding in HTTP/2. A request or response >>containi

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Yann Ylavic
Hmm, "header field names" usually refers to header names. On Fri, Nov 20, 2015 at 5:12 PM, Stefan Eissing wrote: > Yes, but I interpret that as the header fields, not any tokens that refer to > header names. > >> Am 20.11.2015 um 17:04 schrieb Jim Jagielski : >> >> Ugg... I *just* noticed: >> >>

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Yann Ylavic
On Fri, Nov 20, 2015 at 5:04 PM, Jim Jagielski wrote: > Ugg... I *just* noticed: > > However, header field names MUST be converted to lowercase > prior to their encoding in HTTP/2. A request or response > containing uppercase header field names MUST be treated as >

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Stefan Eissing
Yes, but I interpret that as the header fields, not any tokens that refer to header names. > Am 20.11.2015 um 17:04 schrieb Jim Jagielski : > > Ugg... I *just* noticed: > >However, header field names MUST be converted to lowercase >prior to their encoding in HTTP/2. A request or respon

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Jim Jagielski
Ugg... I *just* noticed: However, header field names MUST be converted to lowercase prior to their encoding in HTTP/2. A request or response containing uppercase header field names MUST be treated as malformed > On Nov 20, 2015, at 10:44 AM, Stefan Eissing > w

Re: svn commit: r1715375 - /httpd/httpd/trunk/CHANGES

2015-11-20 Thread Yann Ylavic
No pb ;) The rationale is (I think) that next httpd (2.6/3) CHANGES shouldn't contain the ones from the previous versions. On Fri, Nov 20, 2015 at 4:45 PM, Stefan Eissing wrote: > Updated. > > Sorry, misunderstood the "delta" intention of the file. > >> Am 20.11.2015 um 16:38 schrieb Yann Ylavic

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Yann Ylavic
On Fri, Nov 20, 2015 at 4:44 PM, Stefan Eissing wrote: > Most of this is discussed here: > https://httpwg.github.io/specs/rfc7540.html#HttpHeaders > > Basically HTTP/2 defines its own connection properties, so several things > which are announced/controlled > by Connection: and other headers do

Re: svn commit: r1715375 - /httpd/httpd/trunk/CHANGES

2015-11-20 Thread Stefan Eissing
Updated. Sorry, misunderstood the "delta" intention of the file. > Am 20.11.2015 um 16:38 schrieb Yann Ylavic : > > On Fri, Nov 20, 2015 at 4:24 PM, wrote: >> Author: icing >> Date: Fri Nov 20 15:24:21 2015 >> New Revision: 1715375 >> >> URL: http://svn.apache.org/viewvc?rev=1715375&view=rev

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Stefan Eissing
Most of this is discussed here: https://httpwg.github.io/specs/rfc7540.html#HttpHeaders Basically HTTP/2 defines its own connection properties, so several things which are announced/controlled by Connection: and other headers do not apply to HTTP/2 connections. So, the "Connection:" header itse

Re: svn commit: r1715375 - /httpd/httpd/trunk/CHANGES

2015-11-20 Thread Yann Ylavic
On Fri, Nov 20, 2015 at 4:24 PM, wrote: > Author: icing > Date: Fri Nov 20 15:24:21 2015 > New Revision: 1715375 > > URL: http://svn.apache.org/viewvc?rev=1715375&view=rev > Log: > updated CHANGES > > Modified: > httpd/httpd/trunk/CHANGES > > Modified: httpd/httpd/trunk/CHANGES > URL: > http

Re: svn commit: r1715363 - in /httpd/httpd/trunk/modules/http2: h2_request.c h2_response.h h2_session.c h2_stream.c h2_stream.h h2_util.c h2_util.h

2015-11-20 Thread Yann Ylavic
On Fri, Nov 20, 2015 at 2:58 PM, wrote: > Author: icing > Date: Fri Nov 20 13:58:32 2015 > New Revision: 1715363 > > URL: http://svn.apache.org/viewvc?rev=1715363&view=rev > Log: > incoming trailers passed into chunked request bodies, outgoing trailers not > supported yet > > Modified: [] >

Re: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c

2015-11-20 Thread William A Rowe Jr
On Fri, Nov 20, 2015 at 3:13 AM, Bert Huijben wrote: > > > -Original Message- > > From: Stefan Eissing [mailto:stefan.eiss...@greenbytes.de] > > Sent: vrijdag 20 november 2015 10:11 > > To: dev@httpd.apache.org > > Subject: Re: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c > > >

Re: H2 stream dependencies

2015-11-20 Thread Stefan Eissing
Bert, interesting and nice to see the progress. You probably could use priorities for ordering, especially when using the stream dependencies. I am not certain, however, if this will give you totally deterministic behavior. If stream B depends on A, usually A will be sent out before B. However,

RE: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c

2015-11-20 Thread Bert Huijben
> -Original Message- > From: Stefan Eissing [mailto:stefan.eiss...@greenbytes.de] > Sent: vrijdag 20 november 2015 10:11 > To: dev@httpd.apache.org > Subject: Re: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c > > +1 for lowercasing and pls backport, since it just arrived as is

Re: svn commit: r1715294 - /httpd/httpd/trunk/server/core.c

2015-11-20 Thread Stefan Eissing
+1 for lowercasing and pls backport, since it just arrived as is in 2.4.x, i think. > Am 20.11.2015 um 00:24 schrieb William A Rowe Jr : > > It wouldn't hurt to change this though, the tokens are generally represented > in lowercase, and this could avoid case folding I suppose. > > How often d