Commit b9bf5d701dd6dfcfcb41d2655f59f7669cd50ef9

Carlos Martín Nieto 2013-09-20T22:46:32

clone: re-add a way to ignore certificate errors This used to be done via transport flags, which was removed in a previous commit.

diff --git a/include/git2/clone.h b/include/git2/clone.h
index 0a89b57..cf759ab 100644
--- a/include/git2/clone.h
+++ b/include/git2/clone.h
@@ -63,6 +63,7 @@ typedef struct git_clone_options {
 
 	git_checkout_opts checkout_opts;
 	int bare;
+	int ignore_cert_errors;
 
 	git_remote_callbacks *remote_callbacks;
 	const char* checkout_branch;
diff --git a/src/clone.c b/src/clone.c
index abea0bd..904be1b 100644
--- a/src/clone.c
+++ b/src/clone.c
@@ -310,6 +310,9 @@ static int create_and_configure_origin(
 	if ((error = git_remote_create(&origin, repo, "origin", url)) < 0)
 		goto on_error;
 
+	if (options->ignore_cert_errors)
+		git_remote_check_cert(origin, 0);
+
 	if (options->remote_callbacks &&
 	    (error = git_remote_set_callbacks(origin, options->remote_callbacks)) < 0)
 		goto on_error;