diff options
author | Matt Burke <spraints@gmail.com> | 2015-09-04 08:56:26 -0400 |
---|---|---|
committer | Matt Burke <spraints@gmail.com> | 2015-09-04 09:01:30 -0400 |
commit | c3733e56410d5bc73fcca0df8e062f84a0565f90 (patch) | |
tree | 6a60f01a04da5c65deb1b55861c42d48b6dc767e | |
parent | 1cef6b9f190587a78c65bd3168879be3eb37e0fb (diff) | |
download | libgit2-c3733e56410d5bc73fcca0df8e062f84a0565f90.tar.gz |
Add more headers to HTTP requests
-rw-r--r-- | src/transports/http.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/transports/http.c b/src/transports/http.c index 87f3ee816..f9e5da2b1 100644 --- a/src/transports/http.c +++ b/src/transports/http.c @@ -54,6 +54,7 @@ typedef struct { char *redirect_url; const char *verb; char *chunk_buffer; + git_strarray *extra_headers; unsigned chunk_buffer_len; unsigned sent_request : 1, received_response : 1, @@ -193,6 +194,7 @@ static int gen_request( { http_subtransport *t = OWNING_SUBTRANSPORT(s); const char *path = t->connection_data.path ? t->connection_data.path : "/"; + size_t i; git_buf_printf(buf, "%s %s%s HTTP/1.1\r\n", s->verb, path, s->service_url); @@ -210,6 +212,13 @@ static int gen_request( } else git_buf_puts(buf, "Accept: */*\r\n"); + if (s->extra_headers) { + for (i = 0; i < s->extra_headers->count; i++) { + git_buf_puts(buf, s->extra_headers->strings[i]); + git_buf_puts(buf, "\r\n"); + } + } + /* Apply credentials to the request */ if (apply_credentials(buf, t) < 0) return -1; |