summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Daly <NHDaly@gmail.com>2013-05-30 01:12:27 -0400
committerNathan Daly <NHDaly@gmail.com>2013-05-31 08:53:22 -0400
commit883929144d785702f783e956ff55434566cb009f (patch)
treec9d02c127ecf49c66f2190cdf03eee7061ae70e7
parent0c01f93e8c89a16b3531e4fb32384fe90bf4c548 (diff)
downloadlibgit2-883929144d785702f783e956ff55434566cb009f.tar.gz
Added support for setting transport flags (No check SSL cert) to git_clone call.
-rw-r--r--include/git2/clone.h3
-rw-r--r--src/clone.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/include/git2/clone.h b/include/git2/clone.h
index 20df49104..5858b4e32 100644
--- a/include/git2/clone.h
+++ b/include/git2/clone.h
@@ -51,6 +51,8 @@ GIT_BEGIN_DECL
* - `cred_acquire_cb` is a callback to be used if credentials are required
* during the initial fetch.
* - `cred_acquire_payload` is the payload for the above callback.
+ * - `transport_flags` is flags used to create transport if no transport is
+ * provided.
* - `transport` is a custom transport to be used for the initial fetch. NULL
* means use the transport autodetected from the URL.
* - `remote_callbacks` may be used to specify custom progress callbacks for
@@ -75,6 +77,7 @@ typedef struct git_clone_options {
const char *push_spec;
git_cred_acquire_cb cred_acquire_cb;
void *cred_acquire_payload;
+ git_transport_flags_t transport_flags;
git_transport *transport;
git_remote_callbacks *remote_callbacks;
git_remote_autotag_option_t remote_autotag;
diff --git a/src/clone.c b/src/clone.c
index 7ebdb5765..ba19caef8 100644
--- a/src/clone.c
+++ b/src/clone.c
@@ -336,6 +336,10 @@ static int create_and_configure_origin(
(error = git_remote_set_pushurl(origin, options->pushurl)) < 0)
goto on_error;
+ if (options->transport_flags == GIT_TRANSPORTFLAGS_NO_CHECK_CERT) {
+ git_remote_check_cert(origin, 0);
+ }
+
if ((error = git_remote_save(origin)) < 0)
goto on_error;