summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2022-06-12 10:51:13 -0400
committerGitHub <noreply@github.com>2022-06-12 10:51:13 -0400
commit7eb7edd4a19fb64cc2ff53d21e4d2c93a1197a2b (patch)
tree2df17f95fc28797e2978c293a4f6f23f0fcdd0ee /src
parentd333dbea26437a231bb50d00891da5861567d35a (diff)
parentcc4c37ca9e20bb914725700a3d89d60367dc39f2 (diff)
downloadlibgit2-7eb7edd4a19fb64cc2ff53d21e4d2c93a1197a2b.tar.gz
Merge pull request #6278 from lhchavez/git_transport_smart_remote_connect_options
transport: introduce `git_transport_smart_remote_connect_options`
Diffstat (limited to 'src')
-rw-r--r--src/libgit2/remote.h2
-rw-r--r--src/libgit2/transports/smart.c12
2 files changed, 13 insertions, 1 deletions
diff --git a/src/libgit2/remote.h b/src/libgit2/remote.h
index ea9c7d17f..41ee58e0f 100644
--- a/src/libgit2/remote.h
+++ b/src/libgit2/remote.h
@@ -11,6 +11,7 @@
#include "git2/remote.h"
#include "git2/transport.h"
+#include "git2/sys/remote.h"
#include "git2/sys/transport.h"
#include "refspec.h"
@@ -53,7 +54,6 @@ int git_remote_connect_options_normalize(
git_remote_connect_options *dst,
git_repository *repo,
const git_remote_connect_options *src);
-void git_remote_connect_options_dispose(git_remote_connect_options *opts);
int git_remote_capabilities(unsigned int *out, git_remote *remote);
diff --git a/src/libgit2/transports/smart.c b/src/libgit2/transports/smart.c
index 801fcbe53..7f57dba2a 100644
--- a/src/libgit2/transports/smart.c
+++ b/src/libgit2/transports/smart.c
@@ -425,6 +425,18 @@ int git_transport_smart_credentials(git_credential **out, git_transport *transpo
return connect_opts->callbacks.credentials(out, t->url, user, methods, connect_opts->callbacks.payload);
}
+int git_transport_remote_connect_options(
+ git_remote_connect_options *out,
+ git_transport *transport)
+{
+ transport_smart *t = GIT_CONTAINER_OF(transport, transport_smart, parent);
+
+ GIT_ASSERT_ARG(out);
+ GIT_ASSERT_ARG(transport);
+
+ return git_remote_connect_options_dup(out, &t->connect_opts);
+}
+
int git_transport_smart(git_transport **out, git_remote *owner, void *param)
{
transport_smart *t;