Johannes Schindelin <johannes.schinde...@gmx.de> writes: > Lars Schneider noticed that the configuration introduced to test the > extra HTTP headers cannot be used with Apache 2.2 (which is still > actively maintained, as pointed out by Junio Hamano). > > To let the tests pass with Apache 2.2 again, let's substitute the > offending <RequireAll> and `expr` by using old school RewriteCond > statements. > > As RewriteCond does not allow testing for *non*-matches, we simply match > the desired case first and let it pass by marking the RewriteRule as > '[L]' ("last rule, do not process any other matching RewriteRules after > this"), and then have another RewriteRule that matches all other cases > and lets them fail via '[F]' ("fail"). > > Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de> > Signed-off-by: Junio C Hamano <gits...@pobox.com> > ---
I applied this and compared what was queued from the previous round. It turns out that it is the same, except that I amended it with "Tested-by:" from Lars', so I'll skip this and nothing is lost ;-) Thanks for being thorough (the above is not a suggestion to omit unchanged ones next time--quite the contrary, being able to verify by comparing is a good thing). > t/lib-httpd/apache.conf | 16 ++++++++++++---- > 1 file changed, 12 insertions(+), 4 deletions(-) > > diff --git a/t/lib-httpd/apache.conf b/t/lib-httpd/apache.conf > index b8ed96f..018a83a 100644 > --- a/t/lib-httpd/apache.conf > +++ b/t/lib-httpd/apache.conf > @@ -103,10 +103,6 @@ Alias /auth/dumb/ www/auth/dumb/ > Header set Set-Cookie name=value > </LocationMatch> > <LocationMatch /smart_headers/> > - <RequireAll> > - Require expr %{HTTP:x-magic-one} == 'abra' > - Require expr %{HTTP:x-magic-two} == 'cadabra' > - </RequireAll> > SetEnv GIT_EXEC_PATH ${GIT_EXEC_PATH} > SetEnv GIT_HTTP_EXPORT_ALL > </LocationMatch> > @@ -136,6 +132,18 @@ RewriteRule ^/ftp-redir/(.*)$ ftp://localhost:1000/$1 > [R=302] > RewriteRule ^/loop-redir/x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-(.*) /$1 > [R=302] > RewriteRule ^/loop-redir/(.*)$ /loop-redir/x-$1 [R=302] > > +# Apache 2.2 does not understand <RequireAll>, so we use RewriteCond. > +# And as RewriteCond does not allow testing for non-matches, we match > +# the desired case first (one has abra, two has cadabra), and let it > +# pass by marking the RewriteRule as [L], "last rule, do not process > +# any other matching RewriteRules after this"), and then have another > +# RewriteRule that matches all other cases and lets them fail via '[F]', > +# "fail the request". > +RewriteCond %{HTTP:x-magic-one} =abra > +RewriteCond %{HTTP:x-magic-two} =cadabra > +RewriteRule ^/smart_headers/.* - [L] > +RewriteRule ^/smart_headers/.* - [F] > + > <IfDefine SSL> > LoadModule ssl_module modules/mod_ssl.so -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html