]> git.proxmox.com Git - libgit2.git/blob - src/proxy.c
install as examples
[libgit2.git] / src / proxy.c
1 /*
2 * Copyright (C) the libgit2 contributors. All rights reserved.
3 *
4 * This file is part of libgit2, distributed under the GNU GPL v2 with
5 * a Linking Exception. For full terms see the included COPYING file.
6 */
7
8 #include "proxy.h"
9
10 #include "git2/proxy.h"
11
12 int git_proxy_options_init(git_proxy_options *opts, unsigned int version)
13 {
14 GIT_INIT_STRUCTURE_FROM_TEMPLATE(
15 opts, version, git_proxy_options, GIT_PROXY_OPTIONS_INIT);
16 return 0;
17 }
18
19 #ifndef GIT_DEPRECATE_HARD
20 int git_proxy_init_options(git_proxy_options *opts, unsigned int version)
21 {
22 return git_proxy_options_init(opts, version);
23 }
24 #endif
25
26 int git_proxy_options_dup(git_proxy_options *tgt, const git_proxy_options *src)
27 {
28 if (!src) {
29 git_proxy_options_init(tgt, GIT_PROXY_OPTIONS_VERSION);
30 return 0;
31 }
32
33 memcpy(tgt, src, sizeof(git_proxy_options));
34 if (src->url) {
35 tgt->url = git__strdup(src->url);
36 GIT_ERROR_CHECK_ALLOC(tgt->url);
37 }
38
39 return 0;
40 }
41
42 void git_proxy_options_clear(git_proxy_options *opts)
43 {
44 git__free((char *) opts->url);
45 opts->url = NULL;
46 }