<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/http.c, branch v1.6.4</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v1.6.4</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v1.6.4'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2009-07-09T08:00:36Z</updated>
<entry>
<title>Merge branch 'ml/http'</title>
<updated>2009-07-09T08:00:36Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2009-07-09T08:00:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c535d767f7a518b79a0f9b9a70ec746de76da97c'/>
<id>urn:sha1:c535d767f7a518b79a0f9b9a70ec746de76da97c</id>
<content type='text'>
* ml/http:
  http.c: add http.sslCertPasswordProtected option
  http.c: prompt for SSL client certificate password

Conflicts:
	http.c
</content>
</entry>
<entry>
<title>http.c: add http.sslCertPasswordProtected option</title>
<updated>2009-06-18T17:51:29Z</updated>
<author>
<name>Mark Lodato</name>
<email>lodatom@gmail.com</email>
</author>
<published>2009-05-28T03:16:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=754ae192a4390baeb4d00b96e72c69023efb22ee'/>
<id>urn:sha1:754ae192a4390baeb4d00b96e72c69023efb22ee</id>
<content type='text'>
Add a configuration option, http.sslCertPasswordProtected, and associated
environment variable, GIT_SSL_CERT_PASSWORD_PROTECTED, to enable SSL client
certificate password prompt from within git.  If this option is false and
if the environment variable does not exist, git falls back to OpenSSL's
prompts (as in earlier versions of git).

The environment variable may only be used to enable, not to disable
git's password prompt.  This behavior mimics GIT_NO_VERIFY; the mere
existence of the variable is all that is checked.

Signed-off-by: Mark Lodato &lt;lodatom@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http.c: prompt for SSL client certificate password</title>
<updated>2009-06-18T17:45:05Z</updated>
<author>
<name>Mark Lodato</name>
<email>lodatom@gmail.com</email>
</author>
<published>2009-05-28T03:16:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=30dd916348001e4313708473d91d633d3b14d1b5'/>
<id>urn:sha1:30dd916348001e4313708473d91d633d3b14d1b5</id>
<content type='text'>
If an SSL client certificate is enabled (via http.sslcert or
GIT_SSL_CERT), prompt for the certificate password rather than
defaulting to OpenSSL's password prompt.  This causes the prompt to only
appear once each run.  Previously, OpenSSL prompted the user *many*
times, causing git to be unusable over HTTPS with client-side
certificates.

Note that the password is stored in memory in the clear while the
program is running.  This may be a security problem if git crashes and
core dumps.

The user is always prompted, even if the certificate is not encrypted.
This should be fine; unencrypted certificates are rare and a security
risk anyway.

Signed-off-by: Mark Lodato &lt;lodatom@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'maint'</title>
<updated>2009-06-18T17:39:17Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2009-06-18T17:39:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=da4e4a65a27ca912c3f48289acf9ff7a67476c3f'/>
<id>urn:sha1:da4e4a65a27ca912c3f48289acf9ff7a67476c3f</id>
<content type='text'>
* maint:
  http.c: fix compiling with libcurl 7.9.2
  import-tars: support symlinks
  pull, rebase: simplify to use die()
</content>
</entry>
<entry>
<title>http.c: fix compiling with libcurl 7.9.2</title>
<updated>2009-06-18T17:10:30Z</updated>
<author>
<name>Mark Lodato</name>
<email>lodatom@gmail.com</email>
</author>
<published>2009-06-15T02:39:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ef52aafa0f8b1d34f2ecd9b58f2198711c87cab3'/>
<id>urn:sha1:ef52aafa0f8b1d34f2ecd9b58f2198711c87cab3</id>
<content type='text'>
Change the minimimum required libcurl version for the http.sslKey option
to 7.9.3.  Previously, preprocessor macros checked for &gt;= 7.9.2, which
is incorrect because CURLOPT_SSLKEY was introduced in 7.9.3.  This now
allows git to compile with libcurl 7.9.2.

Signed-off-by: Mark Lodato &lt;lodatom@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http*: add helper methods for fetching objects (loose)</title>
<updated>2009-06-06T18:03:11Z</updated>
<author>
<name>Tay Ray Chuan</name>
<email>rctay89@gmail.com</email>
</author>
<published>2009-06-06T08:44:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5424bc557fc6414660830b470dd45774b8f5f281'/>
<id>urn:sha1:5424bc557fc6414660830b470dd45774b8f5f281</id>
<content type='text'>
The code handling the fetching of loose objects in http-push.c and
http-walker.c have been refactored into new methods and a new struct
(object_http_request) in http.c. They are not meant to be invoked
elsewhere.

The new methods in http.c are
 - new_http_object_request
 - process_http_object_request
 - finish_http_object_request
 - abort_http_object_request
 - release_http_object_request

and the new struct is http_object_request.

RANGER_HEADER_SIZE and no_pragma_header is no longer made available
outside of http.c, since after the above changes, there are no other
instances of usage outside of http.c.

Remove members of the transfer_request struct in http-push.c and
http-walker.c, including filename, real_sha1 and zret, as they are used
no longer used.

Move the methods append_remote_object_url() and get_remote_object_url()
from http-push.c to http.c. Additionally, get_remote_object_url() is no
longer defined only when USE_CURL_MULTI is defined, since
non-USE_CURL_MULTI code in http.c uses it (namely, in
new_http_object_request()).

Refactor code from http-push.c::start_fetch_loose() and
http-walker.c::start_object_fetch_request() that deals with the details
of coming up with the filename to store the retrieved object, resuming
a previously aborted request, and making a new curl request, into a new
function, new_http_object_request().

Refactor code from http-walker.c::process_object_request() into the
function, process_http_object_request().

Refactor code from http-push.c::finish_request() and
http-walker.c::finish_object_request() into a new function,
finish_http_object_request(). It returns the result of the
move_temp_to_file() invocation.

Add a function, release_http_object_request(), which cleans up object
request data. http-push.c and http-walker.c invoke this function
separately; http-push.c::release_request() and
http-walker.c::release_object_request() do not invoke this function.

Add a function, abort_http_object_request(), which unlink()s the object
file and invokes release_http_object_request(). Update
http-walker.c::abort_object_request() to use this.

Signed-off-by: Tay Ray Chuan &lt;rctay89@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http*: add helper methods for fetching packs</title>
<updated>2009-06-06T18:03:11Z</updated>
<author>
<name>Tay Ray Chuan</name>
<email>rctay89@gmail.com</email>
</author>
<published>2009-06-06T08:44:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2264dfa5c4f11e2b0e2740072208186bee361afd'/>
<id>urn:sha1:2264dfa5c4f11e2b0e2740072208186bee361afd</id>
<content type='text'>
The code handling the fetching of packs in http-push.c and
http-walker.c have been refactored into new methods and a new struct
(http_pack_request) in http.c. They are not meant to be invoked
elsewhere.

The new methods in http.c are
 - new_http_pack_request
 - finish_http_pack_request
 - release_http_pack_request

and the new struct is http_pack_request.

Add a function, new_http_pack_request(), that deals with the details of
coming up with the filename to store the retrieved packfile, resuming a
previously aborted request, and making a new curl request. Update
http-push.c::start_fetch_packed() and http-walker.c::fetch_pack() to
use this.

Add a function, finish_http_pack_request(), that deals with renaming
the pack, advancing the pack list, and installing the pack. Update
http-push.c::finish_request() and http-walker.c::fetch_pack to use
this.

Update release_request() in http-push.c and http-walker.c to invoke
release_http_pack_request() to clean up pack request helper data.

The local_stream member of the transfer_request struct in http-push.c
has been removed, as the packfile pointer will be managed in the struct
http_pack_request.

Signed-off-by: Tay Ray Chuan &lt;rctay89@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http: use new http API in fetch_index()</title>
<updated>2009-06-06T18:03:11Z</updated>
<author>
<name>Tay Ray Chuan</name>
<email>rctay89@gmail.com</email>
</author>
<published>2009-06-06T08:44:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=39dc52cf4ff04e9cd4d2562218ad619e23a81efa'/>
<id>urn:sha1:39dc52cf4ff04e9cd4d2562218ad619e23a81efa</id>
<content type='text'>
Signed-off-by: Tay Ray Chuan &lt;rctay89@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http*: add http_get_info_packs</title>
<updated>2009-06-06T18:03:11Z</updated>
<author>
<name>Tay Ray Chuan</name>
<email>rctay89@gmail.com</email>
</author>
<published>2009-06-06T08:43:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b8caac2b8ab6482e7ab59c8ec18f1c3d90e7387d'/>
<id>urn:sha1:b8caac2b8ab6482e7ab59c8ec18f1c3d90e7387d</id>
<content type='text'>
http-push.c and http-walker.c no longer have to use fetch_index or
setup_index; they simply need to use http_get_info_packs, a new http
method, in their fetch_indices implementations.

Move fetch_index() and rename to fetch_pack_index() in http.c; this
method is not meant to be used outside of http.c. It invokes
end_url_with_slash with base_url; apart from that change, the code is
identical.

Move setup_index() and rename to fetch_and_setup_pack_index() in
http.c; this method is not meant to be used outside of http.c.

Do not immediately set ret to 0 in http-walker.c::fetch_indices();
instead do it in the HTTP_MISSING_TARGET case, to make it clear that
the HTTP_OK and HTTP_MISSING_TARGET cases both return 0.

Signed-off-by: Tay Ray Chuan &lt;rctay89@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http.c::http_fetch_ref(): use the new http API</title>
<updated>2009-06-06T18:03:10Z</updated>
<author>
<name>Mike Hommey</name>
<email>mh@glandium.org</email>
</author>
<published>2009-06-06T08:43:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0d5896e1cc1cb6145526b6786c7720cfe8231709'/>
<id>urn:sha1:0d5896e1cc1cb6145526b6786c7720cfe8231709</id>
<content type='text'>
The error message ("Unable to start request") has been removed, since
the http API already prints it.

Signed-off-by: Mike Hommey &lt;mh@glandium.org&gt;
Signed-off-by: Tay Ray Chuan &lt;rctay89@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
