<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/http.c, branch v2.10.3</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://www.git.shady.money/git/atom?h=v2.10.3</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v2.10.3'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2016-10-04T19:02:00Z</updated>
<entry>
<title>http: http.emptyauth should allow empty (not just NULL) usernames</title>
<updated>2016-10-04T19:02:00Z</updated>
<author>
<name>David Turner</name>
<email>dturner@twosigma.com</email>
</author>
<published>2016-10-04T14:53:52Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=5275c3081c2b2c6166a2fc6b253a3acb20f8ae89'/>
<id>urn:sha1:5275c3081c2b2c6166a2fc6b253a3acb20f8ae89</id>
<content type='text'>
When using Kerberos authentication with newer versions of libcurl,
CURLOPT_USERPWD must be set to a value, even if it is an empty value.
The value is never sent to the server.  Previous versions of libcurl
did not require this variable to be set.  One way that some users
express the empty username/password is http://:@gitserver.example.com,
which http.emptyauth was designed to support.  Another, equivalent,
URL is http://@gitserver.example.com.  The latter leads to a username
of zero-length, rather than a NULL username, but CURLOPT_USERPWD still
needs to be set (if http.emptyauth is set).  Do so.

Signed-off-by: David Turner &lt;dturner@twosigma.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ew/http-do-not-forget-to-call-curl-multi-remove-handle' into maint</title>
<updated>2016-09-29T23:49:39Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-09-29T23:49:39Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=e007a094d49d58105a93a22bd4e6d33f6b3eacbd'/>
<id>urn:sha1:e007a094d49d58105a93a22bd4e6d33f6b3eacbd</id>
<content type='text'>
The http transport (with curl-multi option, which is the default
these days) failed to remove curl-easy handle from a curlm session,
which led to unnecessary API failures.

* ew/http-do-not-forget-to-call-curl-multi-remove-handle:
  http: always remove curl easy from curlm session on release
  http: consolidate #ifdefs for curl_multi_remove_handle
  http: warn on curl_multi_add_handle failures
</content>
</entry>
<entry>
<title>Merge branch 'jk/fix-remote-curl-url-wo-proto' into maint</title>
<updated>2016-09-29T23:49:38Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-09-29T23:49:38Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=35ec7fd479f85797d3d2b76beee29121a0a45aff'/>
<id>urn:sha1:35ec7fd479f85797d3d2b76beee29121a0a45aff</id>
<content type='text'>
"git fetch http::/site/path" did not die correctly and segfaulted
instead.

* jk/fix-remote-curl-url-wo-proto:
  remote-curl: handle URLs without protocol
</content>
</entry>
<entry>
<title>http: always remove curl easy from curlm session on release</title>
<updated>2016-09-13T20:34:04Z</updated>
<author>
<name>Eric Wong</name>
<email>e@80x24.org</email>
</author>
<published>2016-09-13T00:25:57Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=2abc848d5431d028b4a6c643c93c7e371e7fdc7e'/>
<id>urn:sha1:2abc848d5431d028b4a6c643c93c7e371e7fdc7e</id>
<content type='text'>
We must call curl_multi_remove_handle when releasing the slot to
prevent subsequent calls to curl_multi_add_handle from failing
with CURLM_ADDED_ALREADY (in curl 7.32.1+; older versions
returned CURLM_BAD_EASY_HANDLE)

Signed-off-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http: consolidate #ifdefs for curl_multi_remove_handle</title>
<updated>2016-09-13T20:34:03Z</updated>
<author>
<name>Eric Wong</name>
<email>e@80x24.org</email>
</author>
<published>2016-09-13T00:25:56Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=d8b6b84df024b4ce2c10d7e5c725da24dcb19ff6'/>
<id>urn:sha1:d8b6b84df024b4ce2c10d7e5c725da24dcb19ff6</id>
<content type='text'>
I find #ifdefs makes code difficult-to-follow.

An early version of this patch had error checking for
curl_multi_remove_handle calls, but caused some tests (e.g.
t5541) to fail under curl 7.26.0 on old Debian wheezy.

Signed-off-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http: warn on curl_multi_add_handle failures</title>
<updated>2016-09-13T20:34:01Z</updated>
<author>
<name>Eric Wong</name>
<email>e@80x24.org</email>
</author>
<published>2016-09-13T00:25:55Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=9f1b58842a44e8f0dc8fb4a447449cb31957b4bf'/>
<id>urn:sha1:9f1b58842a44e8f0dc8fb4a447449cb31957b4bf</id>
<content type='text'>
This will be useful for tracking down curl usage errors.

Signed-off-by: Eric Wong &lt;e@80x24.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote-curl: handle URLs without protocol</title>
<updated>2016-09-08T18:23:43Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2016-09-07T20:06:42Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=d63ed6ef241b2e7f124089e2672cfce8251ed390'/>
<id>urn:sha1:d63ed6ef241b2e7f124089e2672cfce8251ed390</id>
<content type='text'>
Generally remote-curl would never see a URL that did not
have "proto:" at the beginning, as that is what tells git to
run the "git-remote-proto" helper (and git-remote-http, etc,
are aliases for git-remote-curl).

However, the special syntax "proto::something" will run
git-remote-proto with only "something" as the URL. So a
malformed URL like:

  http::/example.com/repo.git

will feed the URL "/example.com/repo.git" to
git-remote-http. The resulting URL has no protocol, but the
code added by 372370f (http: use credential API to handle
proxy authentication, 2016-01-26) does not handle this case
and segfaults.

For the purposes of this code, we don't really care what the
exact protocol; only whether or not it is https. So let's
just assume that a missing protocol is not, and curl will
handle the real error (which is that the URL is nonsense).

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 'rs/use-strbuf-addstr'</title>
<updated>2016-08-08T21:48:41Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-08T21:48:41Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=940622bc8b33e085f62c5bcfe6183fe6f57888e2'/>
<id>urn:sha1:940622bc8b33e085f62c5bcfe6183fe6f57888e2</id>
<content type='text'>
* rs/use-strbuf-addstr:
  use strbuf_addstr() instead of strbuf_addf() with "%s"
  use strbuf_addstr() for adding constant strings to a strbuf
</content>
</entry>
<entry>
<title>use strbuf_addstr() instead of strbuf_addf() with "%s"</title>
<updated>2016-08-05T22:09:25Z</updated>
<author>
<name>René Scharfe</name>
<email>l.s.r@web.de</email>
</author>
<published>2016-08-05T20:37:11Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=bc57b9c0cc5a123365a922fa1831177e3fd607ed'/>
<id>urn:sha1:bc57b9c0cc5a123365a922fa1831177e3fd607ed</id>
<content type='text'>
Call strbuf_addstr() for adding a simple string to a strbuf instead of
using the heavier strbuf_addf().  This is shorter and documents the
intent more clearly.

Signed-off-by: Rene Scharfe &lt;l.s.r@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ew/http-walker'</title>
<updated>2016-08-03T22:10:24Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-03T22:10:24Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=4067a45438282fe967779fcbc5c3513d2cbb5913'/>
<id>urn:sha1:4067a45438282fe967779fcbc5c3513d2cbb5913</id>
<content type='text'>
Dumb http transport on the client side has been optimized.

* ew/http-walker:
  list: avoid incompatibility with *BSD sys/queue.h
  http-walker: reduce O(n) ops with doubly-linked list
  http: avoid disconnecting on 404s for loose objects
  http-walker: remove unused parameter from fetch_object
</content>
</entry>
</feed>
