git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Support more http features: https no cert, .netrc -> auth
@ 2005-07-13  2:12 Darrin Thompson
  2005-07-13 20:11 ` [PATCH (contingency)] Document "curl" requirements Junio C Hamano
  0 siblings, 1 reply; 3+ messages in thread
From: Darrin Thompson @ 2005-07-13  2:12 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: git

Cause setting environment variable GIT_SSL_NO_VERIFY to turn off
curl's ssl peer verification.

Only use curl for http transfers, instead of curl and wget.

Make curl check ~/.netrc for credentials.

---
commit 229718f5723f81304c7c038c18d1e1bd630026ae
tree 501594e7b424855f08d7bef6bd4f9721d40d4a3c
parent e30e814dbfef7a6e89418863e5d7291a2d53b18f
author Darrin Thompson <darrint@progeny.com> Tue, 12 Jul 2005 16:27:05 -0500

 git-fetch-script |    7 +++++--
 http-pull.c      |    6 ++++++
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/git-fetch-script b/git-fetch-script
--- a/git-fetch-script
+++ b/git-fetch-script
@@ -14,8 +14,11 @@ fi
 TMP_HEAD="$GIT_DIR/TMP_HEAD"
 
 case "$merge_repo" in
-http://*)
-	head=$(wget -q -O - "$merge_repo/$merge_name") || exit 1
+http://*|https://*)
+        if [ -n "$GIT_SSL_NO_VERIFY" ]; then
+            curl_extra_args="-k"
+        fi
+	head=$(curl -ns $curl_extra_args "$merge_repo/$merge_name") || exit 1
 	echo Fetching $head using http
 	git-http-pull -v -a "$head" "$merge_repo/"
 	;;
diff --git a/http-pull.c b/http-pull.c
--- a/http-pull.c
+++ b/http-pull.c
@@ -16,6 +16,8 @@ static z_stream stream;
 static int local;
 static int zret;
 
+static int curl_ssl_verify;
+
 struct buffer
 {
         size_t posn;
@@ -173,6 +175,10 @@ int main(int argc, char **argv)
 
 	curl = curl_easy_init();
 
+	curl_ssl_verify = gitenv("GIT_SSL_NO_VERIFY") ? 0 : 1;
+	curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, curl_ssl_verify);
+	curl_easy_setopt(curl, CURLOPT_NETRC, CURL_NETRC_OPTIONAL);
+
 	base = url;
 
 	if (pull(commit_id))

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH (contingency)] Document "curl" requirements.
  2005-07-13  2:12 [PATCH] Support more http features: https no cert, .netrc -> auth Darrin Thompson
@ 2005-07-13 20:11 ` Junio C Hamano
  2005-07-13 20:50   ` Darrin Thompson
  0 siblings, 1 reply; 3+ messages in thread
From: Junio C Hamano @ 2005-07-13 20:11 UTC (permalink / raw)
  To: Darrin Thompson; +Cc: git

darrint@progeny.com (Darrin Thompson) writes:

> Cause setting environment variable GIT_SSL_NO_VERIFY to turn off
> curl's ssl peer verification.
>
> Only use curl for http transfers, instead of curl and wget.

I do not mind curl per se, since we already require libcurl for
http-pull, but it would be nice if we document what external
software we depend on in one place.  Something like this on top
of what you posted?

------------
Not just libcurl, but now we require curl executable as well.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
diff --git a/INSTALL b/INSTALL
--- a/INSTALL
+++ b/INSTALL
@@ -41,8 +41,10 @@ Issues of note:
 	  can avoid the bignum support by excising git-rev-list support
 	  for "--merge-order" (by hand).
 
-	- "libcurl".  git-http-pull uses this.  You can disable building of
-	  that program if you just want to get started. 
+	- "libcurl" and "curl" (executable).  git-http-pull and
+	  git-fetch-script use them.  If you do not use http
+	  transfer, you are probabaly OK if you do not have
+	  these two.
 
 	- "GNU diff" to generate patches.  Of course, you don't _have_ to
 	  generate patches if you don't want to, but let's face it, you'll

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH (contingency)] Document "curl" requirements.
  2005-07-13 20:11 ` [PATCH (contingency)] Document "curl" requirements Junio C Hamano
@ 2005-07-13 20:50   ` Darrin Thompson
  0 siblings, 0 replies; 3+ messages in thread
From: Darrin Thompson @ 2005-07-13 20:50 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

On Wed, 2005-07-13 at 13:11 -0700, Junio C Hamano wrote:
> darrint@progeny.com (Darrin Thompson) writes:
> 
> > Cause setting environment variable GIT_SSL_NO_VERIFY to turn off
> > curl's ssl peer verification.
> >
> > Only use curl for http transfers, instead of curl and wget.
> 
> I do not mind curl per se, since we already require libcurl for
> http-pull, but it would be nice if we document what external
> software we depend on in one place.  Something like this on top
> of what you posted?

I have no problem with it. Do I need to take some action?

--
Darrin

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-07-13 20:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-07-13  2:12 [PATCH] Support more http features: https no cert, .netrc -> auth Darrin Thompson
2005-07-13 20:11 ` [PATCH (contingency)] Document "curl" requirements Junio C Hamano
2005-07-13 20:50   ` Darrin Thompson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).