diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2017-05-01 16:11:56 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-01 16:11:56 +0100 |
commit | d87028438621240406b73ddff5a9e488734cbda7 (patch) | |
tree | 3b1475bf2252b6da7c351f9aa7b9535dfb0a4ac8 | |
parent | 5700ee9c2395c768a8bcbe179fdb1bcc4d4768e1 (diff) | |
parent | 5c7609604634d84d137dcec2ce3be1d23ae8c791 (diff) | |
download | libgit2-d87028438621240406b73ddff5a9e488734cbda7.tar.gz |
Merge pull request #4206 from libgit2/cmn/transport-get-proxy
transport: provide a getter for the proxy options
-rw-r--r-- | include/git2/sys/transport.h | 10 | ||||
-rw-r--r-- | src/transports/smart.c | 6 |
2 files changed, 16 insertions, 0 deletions
diff --git a/include/git2/sys/transport.h b/include/git2/sys/transport.h index 60e38b21a..a395de5ed 100644 --- a/include/git2/sys/transport.h +++ b/include/git2/sys/transport.h @@ -241,6 +241,16 @@ GIT_EXTERN(int) git_transport_smart_certificate_check(git_transport *transport, */ GIT_EXTERN(int) git_transport_smart_credentials(git_cred **out, git_transport *transport, const char *user, int methods); +/** + * Get a copy of the proxy options + * + * The url is copied and must be freed by the caller. + * + * @param out options struct to fill + * @param transport the transport to extract the data from. + */ +GIT_EXTERN(int) git_transport_smart_proxy_options(git_proxy_options *out, git_transport *transport); + /* *** End of base transport interface *** *** Begin interface for subtransports for the smart transport *** diff --git a/src/transports/smart.c b/src/transports/smart.c index e4aa26d86..a96fdf6fb 100644 --- a/src/transports/smart.c +++ b/src/transports/smart.c @@ -472,6 +472,12 @@ int git_transport_smart_credentials(git_cred **out, git_transport *transport, co return t->cred_acquire_cb(out, t->url, user, methods, t->cred_acquire_payload); } +int git_transport_smart_proxy_options(git_proxy_options *out, git_transport *transport) +{ + transport_smart *t = (transport_smart *) transport; + return git_proxy_options_dup(out, &t->proxy); +} + int git_transport_smart(git_transport **out, git_remote *owner, void *param) { transport_smart *t; |