<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/t/lib-httpd, branch v2.0.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.0.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.0.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2014-01-02T18:25:03Z</updated>
<entry>
<title>use distinct username/password for http auth tests</title>
<updated>2014-01-02T18:25:03Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2014-01-02T07:38:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=afbf5ca507470aab6716671f2ad207c74cd585fb'/>
<id>urn:sha1:afbf5ca507470aab6716671f2ad207c74cd585fb</id>
<content type='text'>
The httpd server we set up to test git's http client code
knows about a single account, in which both the username and
password are "user@host" (the unusual use of the "@" here is
to verify that we handle the character correctly when URL
escaped).

This means that we may miss a certain class of errors in
which the username and password are mixed up internally by
git. We can make our tests more robust by having distinct
values for the username and password.

In addition to tweaking the server passwd file and the
client URL, we must teach the "askpass" harness to accept
multiple values. As a bonus, this makes the setup of some
tests more obvious; when we are expecting git to ask
only about the password, we can seed the username askpass
response with a bogus value.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/http-auth-redirects'</title>
<updated>2013-10-30T19:09:53Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-10-30T19:09:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=177f0a400955f2345c73a5c8b0459d617429ffd9'/>
<id>urn:sha1:177f0a400955f2345c73a5c8b0459d617429ffd9</id>
<content type='text'>
Handle the case where http transport gets redirected during the
authorization request better.

* jk/http-auth-redirects:
  http.c: Spell the null pointer as NULL
  remote-curl: rewrite base url from info/refs redirects
  remote-curl: store url as a strbuf
  remote-curl: make refs_url a strbuf
  http: update base URLs when we see redirects
  http: provide effective url to callers
  http: hoist credential request out of handle_curl_result
  http: refactor options to http_get_*
  http_request: factor out curlinfo_strbuf
  http_get_file: style fixes
</content>
</entry>
<entry>
<title>remote-curl: rewrite base url from info/refs redirects</title>
<updated>2013-10-15T00:01:34Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-09-28T08:35:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=050ef3655c8ea1dc7a2b3b843ca7c45dd94d9c88'/>
<id>urn:sha1:050ef3655c8ea1dc7a2b3b843ca7c45dd94d9c88</id>
<content type='text'>
For efficiency and security reasons, an earlier commit in
this series taught http_get_* to re-write the base url based
on redirections we saw while making a specific request.

This commit wires that option into the info/refs request,
meaning that a redirect from

    http://example.com/foo.git/info/refs

to

    https://example.com/bar.git/info/refs

will behave as if "https://example.com/bar.git" had been
provided to git in the first place.

The tests bear some explanation. We introduce two new
hierearchies into the httpd test config:

  1. Requests to /smart-redir-limited will work only for the
     initial info/refs request, but not any subsequent
     requests. As a result, we can confirm whether the
     client is re-rooting its requests after the initial
     contact, since otherwise it will fail (it will ask for
     "repo.git/git-upload-pack", which is not redirected).

  2. Requests to smart-redir-auth will redirect, and require
     auth after the redirection. Since we are using the
     redirected base for further requests, we also update
     the credential struct, in order not to mislead the user
     (or credential helpers) about which credential is
     needed. We can therefore check the GIT_ASKPASS prompts
     to make sure we are prompting for the new location.
     Because we have neither multiple servers nor https
     support in our test setup, we can only redirect between
     paths, meaning we need to turn on
     credential.useHttpPath to see the difference.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
</content>
</entry>
<entry>
<title>http: add http.savecookies option to write out HTTP cookies</title>
<updated>2013-07-30T16:19:04Z</updated>
<author>
<name>Dave Borowitz</name>
<email>dborowitz@google.com</email>
</author>
<published>2013-07-23T22:40:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=912b2acf2f376e51bee32a486ca42ba4ad764363'/>
<id>urn:sha1:912b2acf2f376e51bee32a486ca42ba4ad764363</id>
<content type='text'>
HTTP servers may send Set-Cookie headers in a response and expect them
to be set on subsequent requests. By default, libcurl behavior is to
store such cookies in memory and reuse them across requests within a
single session. However, it may also make sense, depending on the
server and the cookies, to store them across sessions. Provide users
an option to enable this behavior, writing cookies out to the same
file specified in http.cookiefile.

Signed-off-by: Dave Borowitz &lt;dborowitz@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/apache-test-for-2.4'</title>
<updated>2013-06-23T21:53:17Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-06-23T21:53:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=23983a473dc889cfba8a64f040942298a6f5f99a'/>
<id>urn:sha1:23983a473dc889cfba8a64f040942298a6f5f99a</id>
<content type='text'>
* jk/apache-test-for-2.4:
  lib-httpd/apache.conf: check version only after mod_version loads
  t/lib-httpd/apache.conf: configure an MPM module for apache 2.4
  t/lib-httpd/apache.conf: load compat access module in apache 2.4
  t/lib-httpd/apache.conf: load extra auth modules in apache 2.4
  t/lib-httpd/apache.conf: do not use LockFile in apache &gt;= 2.4
</content>
</entry>
<entry>
<title>lib-httpd/apache.conf: check version only after mod_version loads</title>
<updated>2013-06-21T20:58:06Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-06-21T18:12:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5bdc47eb55aabef3720039181fc360499081a29f'/>
<id>urn:sha1:5bdc47eb55aabef3720039181fc360499081a29f</id>
<content type='text'>
Commit 0442743 introduced an &lt;IfVersion&gt; directive near the
top of the apache config file. However, at that point we
have not yet checked for and loaded the mod_version module.
This means that the directive will behave oddly if
mod_version is dynamically loaded, failing to match when it
should.

We can fix this by moving the whole block below the
LoadModule directive for mod_version.

Reported-by: Brian Gernhardt &lt;brian@gernhardtsoftware.com&gt;
Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t/lib-httpd/apache.conf: configure an MPM module for apache 2.4</title>
<updated>2013-06-14T17:29:04Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-06-09T08:09:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=296f0b3ea9b904982780522215a9c71d4a7bd02c'/>
<id>urn:sha1:296f0b3ea9b904982780522215a9c71d4a7bd02c</id>
<content type='text'>
Versions of Apache before 2.4 always had a "MultiProcessing
Module" (MPM) statically built in, which manages the worker
threads/processes. We do not care which one, as it is
largely a performance issue, and we put only a light load on
the server during our testing.

As of Apache 2.4, the MPM module is loadable just like any
other module, but exactly one such module must be loaded. On
a system where the MPMs are compiled dynamically (e.g.,
Debian unstable), this means that our test Apache server
will not start unless we provide the appropriate
configuration.

Unfortunately, we do not actually know which MPM modules are
available or appropriate for the system on which the tests
are running. This patch picks the "prefork" module, as it
is likely to be available on all Unix-like systems.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t/lib-httpd/apache.conf: load compat access module in apache 2.4</title>
<updated>2013-06-14T17:29:01Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-06-09T08:08:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bb3f7ccadb5270e060cfbbb44f9c80a8c65cc449'/>
<id>urn:sha1:bb3f7ccadb5270e060cfbbb44f9c80a8c65cc449</id>
<content type='text'>
In apache 2.4, the "Order" directive has gone away in favor
of a new system in mod_authz_host. However, since we want
our config file to remain compatible across multiple Apache
versions, we can use mod_access_compat to keep using the
older style.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t/lib-httpd/apache.conf: load extra auth modules in apache 2.4</title>
<updated>2013-06-14T17:28:16Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-06-09T08:08:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a8adcc4730339c69d173ea4f10c06d7af4a456b4'/>
<id>urn:sha1:a8adcc4730339c69d173ea4f10c06d7af4a456b4</id>
<content type='text'>
In apache 2.4, the "Auth*" and "Require" directives have
moved into the authn_core and authz_core modules,
respectively.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t/lib-httpd/apache.conf: do not use LockFile in apache &gt;= 2.4</title>
<updated>2013-06-14T17:27:54Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-06-09T08:07:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0442743810c6f6c14386a5a9d6bf8e4d69adbc51'/>
<id>urn:sha1:0442743810c6f6c14386a5a9d6bf8e4d69adbc51</id>
<content type='text'>
The LockFile directive from earlier versions of apache has
been replaced by the Mutex directive. The latter seems to
give sane defaults and does not need any specific
customization, so we can get away with just adding a version
check to the use of LockFile.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
