]>
Commit | Line | Data |
---|---|---|
dd4ff2c9 CMN |
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 | #ifndef INCLUDE_stream_h__ | |
8 | #define INCLUDE_stream_h__ | |
9 | ||
10 | #include "common.h" | |
11 | #include "git2/sys/stream.h" | |
12 | ||
13 | GIT_INLINE(int) git_stream_connect(git_stream *st) | |
14 | { | |
15 | return st->connect(st); | |
16 | } | |
17 | ||
84d83b8e CMN |
18 | GIT_INLINE(int) git_stream_is_encrypted(git_stream *st) |
19 | { | |
20 | return st->encrypted; | |
21 | } | |
22 | ||
dd4ff2c9 CMN |
23 | GIT_INLINE(int) git_stream_certificate(git_cert **out, git_stream *st) |
24 | { | |
25 | if (!st->encrypted) { | |
26 | giterr_set(GITERR_INVALID, "an unencrypted stream does not have a certificate"); | |
27 | return -1; | |
28 | } | |
29 | ||
30 | return st->certificate(out, st); | |
31 | } | |
32 | ||
1376e784 CMN |
33 | GIT_INLINE(int) git_stream_supports_proxy(git_stream *st) |
34 | { | |
35 | return st->proxy_support; | |
36 | } | |
37 | ||
38 | GIT_INLINE(int) git_stream_set_proxy(git_stream *st, const char *proxy_url) | |
39 | { | |
40 | if (!st->proxy_support) { | |
41 | giterr_set(GITERR_INVALID, "proxy not supported on this stream"); | |
42 | return -1; | |
43 | } | |
44 | ||
45 | return st->set_proxy(st, proxy_url); | |
46 | } | |
47 | ||
dd4ff2c9 CMN |
48 | GIT_INLINE(ssize_t) git_stream_read(git_stream *st, void *data, size_t len) |
49 | { | |
50 | return st->read(st, data, len); | |
51 | } | |
52 | ||
49ae22ba | 53 | GIT_INLINE(ssize_t) git_stream_write(git_stream *st, const char *data, size_t len, int flags) |
dd4ff2c9 CMN |
54 | { |
55 | return st->write(st, data, len, flags); | |
56 | } | |
57 | ||
58 | GIT_INLINE(int) git_stream_close(git_stream *st) | |
59 | { | |
60 | return st->close(st); | |
61 | } | |
62 | ||
63 | GIT_INLINE(void) git_stream_free(git_stream *st) | |
64 | { | |
a2fd56ab | 65 | st->free(st); |
dd4ff2c9 CMN |
66 | } |
67 | ||
68 | #endif |