summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Martín Nieto <cmn@dwim.me>2013-09-20 22:46:32 +0200
committerCarlos Martín Nieto <cmn@dwim.me>2013-10-02 06:42:26 +0200
commitb9bf5d701dd6dfcfcb41d2655f59f7669cd50ef9 (patch)
treeff269a2426afee4271efc147f79bdc1e4d0afae4
parent6ac15eff6d173674d9f17e9d5ddb98997eb97cf4 (diff)
downloadlibgit2-b9bf5d701dd6dfcfcb41d2655f59f7669cd50ef9.tar.gz
clone: re-add a way to ignore certificate errors
This used to be done via transport flags, which was removed in a previous commit.
-rw-r--r--include/git2/clone.h1
-rw-r--r--src/clone.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/include/git2/clone.h b/include/git2/clone.h
index 0a89b5712..cf759ab5c 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 abea0bd8f..904be1b57 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;